64,637
社区成员
发帖
与我相关
我的任务
分享
#include <iostream>
using namespace std;
template <class T>
class SortableList
{//可排序表类
public:
SortableList(int mSize,T f[]) //构造函数
{
n=0;
maxSize=mSize;
l=new T[maxSize];
for(int i=0;i<mSize;i++)
{
l[i]=f[i];
n++;
}
}
~SortableList(){delete []l;} //析构函数
void Sort();
void Output();
private:
T *l; //动态生成一维数组
int maxSize; //线性表的最大表长
int n; //线性表的实际长度
void MergeSort(int left,int right);
};
template <class T>
void SortableList<T>::Sort()
{
for(int i=0;i<n;i++)
{
for(int j=i;j<n;j++)
{
if(l[i]>l[j])
{
int temp=l[i];
l[i]=l[j];
l[j]=temp;
}
}
}
}
template <class T>
void SortableList<T>::Output()
{
for(int i=0;i<n;i++)
{
cout<<l[i]<<endl;
}
}
void main()
{
int l[]={1,100,7,33,4,45,98,88,26};
SortableList<int> List(sizeof(l)/sizeof(int),l);
List.Sort();
List.Output();
}