数据结构上机答案(2)

2019-02-15 19:37

}

ListInsert_Sq(Lb,i,e); }

printf(\Load_Sq(Lb); printf(\MergeList(La,Lb,Lc); return 0;

1.3顺序表逆置 #include #include #define OK 1 #define ERROR 0

#define LIST_INIT_SIZE 100 #define LISTINCREMENT 10 #define ElemType int

typedef struct { int *elem,length,listsize; }SqList;

int InitList_Sq(SqList &L) { L.elem=(ElemType*)malloc(LIST_INIT_SIZE*sizeof(ElemType)); if(!L.elem) { printf(\ return ERROR; } L.length=0; L.listsize=LIST_INIT_SIZE; return OK; }

int Load_Sq(SqList &L) { int i; if(!L.length) { printf(\ return ERROR; }

else { for(i=0;i

int ListInsert_Sq(SqList &L,int i,int e) { ElemType *newbase,*p,*q; if(L.length>=L.listsize) { newbase=(ElemType*)realloc(L.elem,(L.listsize+LISTINCREMENT)*sizeof(ElemType)); if(!newbase) { printf(\ return ERROR; } L.elem=newbase; L.listsize+=LISTINCREMENT; } q=&(L.elem[i-1]); for(p=&(L.elem[L.length-1]);p>=q;p--) *(p+1)=*p; *q=e; L.length++; return OK; }

int swap(SqList &L,int n) { int i,j,temp; for(i=0,j=n-1;j>i;i++,j--) { temp=L.elem[i]; L.elem[i]=L.elem[j]; L.elem[j]=temp; } return OK; }

int main() {

SqList T; int n,i; ElemType x; scanf(\ InitList_Sq(T); for(i=1;i

1.4链式线性表的基本操作 #include #include #define ERROR 0 #define OK 1

#define ElemType int

typedef struct LNode { int data; struct LNode *next; }LNode,*LinkList;

int CreateLink_L(LinkList &L,int n) { LinkList p,q; int i; ElemType e; L=(LinkList)malloc(sizeof(LNode)); L->next=NULL; q=(LinkList)malloc(sizeof(LNode)); q=L; for(i=0;i

p->data=e; p->next=q->next; q->next=p; q=q->next; } return OK; }

int LoadLink_L(LinkList &L) { LinkList p=L->next; if(!p) printf(\ else { printf(\ while(p) { printf(\ p=p->next; } } printf(\ return OK; }

int LinkInsert_L(LinkList &L,int i,ElemType e) { LNode *p=L,*s; int j=0; while(p&&jnext; j++; } if(!p||j>i-1) return ERROR; s=(LinkList)malloc(sizeof(LNode)); s->data=e; s->next=p->next; p->next=s; return OK; }

int LinkDelete_L(LinkList &L,int i,ElemType &e) { LNode *p=L,*q; int j=0; while(p->next&&jnext; j++; } if(!(p->next)||jnext; p->next=q->next; e=q->data; free(q); return OK; }

int main() { LinkList T; int a,n,i; ElemType x,e; printf(\ scanf(\ printf(\ if(CreateLink_L(T,n)) { printf(\ LoadLink_L(T); } while(1) { printf(\element\\n2:Delete element\\n3:Load all elements\\n0:Exit\\nPlease choose:\\n\ scanf(\ switch(a) { case 1:scanf(\ if(!LinkInsert_L(T,i,x)) printf(\ else printf(\ break;


数据结构上机答案(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:线塔3 混凝土电杆组立检查及评级记录表

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

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