#include<iostream>
using namespace std;
template<class T>
class sq_LList
{
private:
int mm;
int nn;
T *v://顺序表空间存储首地址
public:
sq_LList()
{
mm=0;
nn=0;
return;
}
sq_LList(int);
void prt_sq_ LList();
int flag_sq_LList();
void ins_sq_LList(int T);
void del_sq_LList(int);
};
//建立空链表
template<class T>
sq_LList<T>::sq_LList(int m)
{
mm=m;//存储空间容量
v=new T[mm];
nn=0;
return;
}
template<class T>
void prt_sq_LList()
{
int i;
cout<<"nn="<<nnendl;
for(i=0;i<nn;i++)
cout<<v[i]<<endl;
return;
}
//检测顺序表的状态
template<class T>
int sq_LList<T>::flag_sq_LList()
{
if(nn==mm)
return(-1);
if(nn==0)
return(0);
return(1);
}
//插入元素
template<class T>
void sq_LList<T>::ins_sq_LList(int i,T b)
{
itn k;
if(nn==mm)
{
cout<<"overflow"<<endl;
if(i>nn)
i=nn+1;
if(i<1)
i=1;
for(k==nn;k>=i;k--)
v[k]=v[k-1];
v[i-1]=b;
nn=nn+1;
return;
}
//删除指定元素
template<class T>
void sq_LList<T>::del_sq_LList(int i)
{
int k;
if(nn==0)
cout<<"underflow!"<<endl;
return;
}
if((i<1)||(i>nn))
cout<<"NOT this element in the list!"<<endl;
return;
}
for(k=i;k<nn;k++)
v[k-1]=v[k];
nn=nn-1;
return;
}
#include"sq_LList.h"
int main()
{
sq_LList<double>s1(100);
return 0;
}
数据结构之顺序表的建立
猜你喜欢
转载自blog.csdn.net/Azuresmh/article/details/84072385
今日推荐
周排行