c++数据结构顺序表、单链表、查找的代码

2025-06-27

顺序表

#include using namespace std; template void ins_sq_LList(T*v,int m,int*n,int i,T b) {int k; if(*n==m) {cout<<\ if(i>*n)i=*n+1; if(i<1)i=1; for(k=*n;k>=i;k--) v[k]=v[k-1]; v[i-1]=b; *n=*n+1; return; }

#include using namespace std; template 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

sq_LList(T)::sq_LList(int m) {mm=m;

v=new T[mm]; nn=0; return; }

template

void sq_LList::prt_sq_LList() {int i;

cout<<\

for (i=0;i

单链表

template

void linked_LList::ins_linked_LList(Tx,Tb) {node*p,*q; p=new node; p->d=b;

if(head==null)

{head=p;p->next=null;return;} if(head->d==x)

{p->next=head;head=p;return;} q=head;

while((q->next!=NULL)&&(((q->next)->d)!=x)) q=q->next;

p->next=q->next;q->next=p; return; }

linked_Llist.h

#include using namespace std; template struct node {T d;

node*next: };

template class linked_LList {private:

node*head: public: linked_LList(); void prt_linked_LList(); void ins_linked_LList(T,T); int del_linked_LList(T); };

template

linked_LList::linked_LList() {head=NULL;return;} template

void linked_LList::prt_linked_LList() {node*p; p=head;

if(p==NULL){cout<<\空链表!\do{cout<d<next;

}while(p!=NULL); return; }

#include using namespace std; template struct node {T d;

node*next: };

//定义线性链表类 template class linked_LList {private:

node*head: public: linked_LList(); void prt_linked_LList(); void ins_linked_LList(T,T); int del_linked_LList(T); };

//建立空链表 template

linked_LList::linked_LList() {head=NULL;return;} //扫描输出链表中的元素 template

void linked_LList::prt_linked_LList() {node*p; p=head;

if(p==NULL){cout<<\空链表!\do{cout<d<next;

}while(p!=NULL); return; }

template

void linked_LList::ins_linked_LList(Tx,Tb) {node*p,*q; p=new node; p->d=b;

if(head==null)

{head=p;p->next=null;return;} if(head->d==x)

{p->next=head;head=p;return;} q=head;

while((q->next!=NULL)&&(((q->next)->d)!=x)) q=q->next;

p->next=q->next;q->next=p; return; }

查找

#include using namespace std; template class SL_List {private: int mm; int nn; T * v; public: SL_List(){mm=0;nn=0;return;} SL_List(int); int search_SL_List(T); int insert_SL_List(T); int delete_SL_List(T); void prt_SL_List(); friend SL_List operator + (SL_List &,SL_List &); }; template SL_List::SL_List(int m) {mm=m;

v=new T[mm]; nn=0; return; }

template int SL_List::search_SL_List(T x) {int i,j,k; i=1;j=nn; while(i<=j) {k=(i+j)/2;

if(v[k-1]==x)return(k-1); if(v[k-1]>x)j=k-1; else i=k+1; }

return(-1); }

template int SL_List::insert_SL_List(T x) {int k;

if(nn==mm)

{cout<<\上溢!\k=nn-1;

while(v[k]>x)

{v[k+1]=v[k];k=k-1;} v[k+1]=x; nn=nn+1; return(1); }

template int SL_List::delete_SL_List(T x) {int i,k;

k=search_SL_List(x) if(k>=0) {for(i=k;i

template void SL_List::prt_SL_List() {int i;


c++数据结构顺序表、单链表、查找的代码.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:普通高中信息技术学业水平考试

相关阅读
本类排行
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 7

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219