main() { int Sqlist[MaxSize]; int len; int i; printf("Please input six integer number\n"); for (i = 0; i <6; i++) { scanf("%d", &Sqlist[i]); } len = 6; for (i=0; i<len; i++) { printf("%d ", Sqlist[i]); } printf("\nThe spare length is %d\n", MaxSize-len); insertElem(Sqlist, &len, 3, 0); for (i=0; i<len; i++) printf("%d ", Sqlist[i]); printf("\nThe spare length is %d\n", MaxSize-len); insertElem(Sqlist, &len, 11, 0); DelElem(Sqlist, &len, 6); for (i=0; i<len; i++) printf("%d ", Sqlist[i]); printf("\nThe spare length is %d\n", MaxSize-len); return; }
void main() { int i; ElemType e; SqList sq; InitList(sq); /*初始化顺序表sq*/ InsElem(sq, 'a', 1); /*插入元素*/ InsElem(sq, 'c', 2); InsElem(sq, 'a', 3); InsElem(sq, 'e', 4); InsElem(sq, 'd', 5); InsElem(sq, 'b', 6); printf("线性表:"); DispList(sq); printf("长度:%d\n", GetLength(sq)); i = 3; GetElem(sq, i, e); printf("第%d个元素:%c\n", i, e); e = 'a'; printf("元素%c是第%d个元素\n", e, Locate(sq, e)); i = 4; printf("删除第%d个元素\n", i); DelElem(sq, i); printf("线性表:"); DispList(sq); }
void main() { int i; ElemType e; struct node *L; struct node *L1,*L2; ElemType a[5]={'a','b','c','d','e'},b[5]={'f','g','h','i','j'}; InitList(L); //初始化 InsElem(L,'a',1); InsElem(L,'c',2); InsElem(L,'a',3); InsElem(L,'e',4); InsElem(L,'d',5); InsElem(L,'b',6); printf("线性表L:");DispList(L); printf("长度:%d\n",GetLength(L)); i=3;GetElem(L,i,e); printf("第%d个元素:%c\n",i,e); e='a'; printf("元素%c是第%d个元素\n",e,Locate(L,e)); i=4;printf("删除第%d个元素\n",i); DelElem(L,i); printf("线性表:");DispList(L); // CreateListF(L1,a,5); printf("线性表L1:"); DispList(L1); CreateListR(L2,b,5); printf("线性表L2:"); DispList(L2); }
int main(int argc, char *argv[]) { int i, j; SeqList A; /* 声明顺序表A和B */ SeqList B; InitList(&A); /* 初始化顺序表A和B */ InitList(&B); Insert_Elem(&A, 10); /* 将1~10插入顺序表A */ Insert_Elem(&B, 5); /* 将1~5插入顺序表B */ printf("顺序表A中的元素: \n"); /* 输出顺序表A中的每个元素 */ Show_Elem(&A); printf("\n顺序表B中的元素: \n"); /* 输出顺序表B中的每个元素 */ Show_Elem(&B); putchar('\n'); printf("将在A中出项B的元素删除后A的元素: \n"); DelElem(&A, B); /* 将在顺序表A中出现B的元素删除 */ Show_Elem(&A); putchar('\n'); return 0; }
void main() { int i; ElemType e; DLink *L; InitList(L); /*初始化双链表L*/ InsElem(L, 'a', 1); /*插入元素*/ InsElem(L, 'c', 2); InsElem(L, 'a', 3); InsElem(L, 'e', 4); InsElem(L, 'd', 5); InsElem(L, 'b', 6); printf("线性表:"); DispList(L); printf("长度:%d\n", GetLength(L)); i = 3; GetElem(L, i, e); printf("第%d个元素:%c\n", i, e); e = 'a'; printf("元素%c是第%d个元素\n", e, Locate(L, e)); i = 4; printf("删除第%d个元素\n", i); DelElem(L, i); printf("线性表:"); DispList(L); }
// 删除第pos个以及它之前的元素 T SLinkList::DelElemEx(int pos){ if( pos<0 || pos>length ) return 0;//pos位置不合法 for (int i=pos; i>=1; i--) { DelElem(i); } return head->data; }
void main() { int i,j,flag; DataType e; SeqList A, B; InitList(&A); InitList(&B); for(i=1;i<=10;i++) { if(InsertList(&A,i,i) == 0) { printf("位置不合法"); return; } } for(i=1,j=1;j<=6;i=i+2,j++) { if(InsertList(&B,j,i*2) == 0) { printf("位置不合法"); return; } } printf("顺序表A中的元素:\n"); for(i=1;i<=A.length;i++) { flag = GetElem(A,i,&e); if(flag==1) { printf("%4d",e); } } printf("\n"); printf("顺序表B中的元素:\n"); for(i=1;i<=B.length;i++) { flag = GetElem(B,i,&e); if(flag == 1) { printf("%4d",e); } } printf("\n"); printf("将在A中出现的B的元素删除后的A的元素:\n"); DelElem(&A,B); for(i=1;i<=A.length;i++) { flag = GetElem(A,i,&e); if(flag==1) { printf("%4d",e); } } printf("\n"); }
void main_DelElem() { int i,j,flag; DataType e; SeqList A,B; InitList(&A); InitList(&B); for(i=1;i<=10;i++) //将1-10插入到顺序表A中 { if(InsertList(&A,i,i)==0) { printf("位置不合法"); return; } } for(i=1,j=1;j<=6;i=i+2,j++) //插入顺序表B中六个数 { if(InsertList(&B,j,i*2)==0) { printf("位置不合法"); return; } } printf("顺序表A中的元素:\n"); for(i=1;i<=A.length;i++) { flag=GetElem(A,i,&e); //返回顺序表A中的每个元素到e中 if(flag==1) printf("%4d",e); } printf("\n"); printf("顺序表B中的元素:\n"); for(i=1;i<=B.length;i++) //输出顺序表B中的每个元素 { flag=GetElem(B,i,&e); //返回顺序表B中的每个元素到e中 if(flag==1) printf("%4d",e); } printf("\n"); printf("将在A中出现B的元素删除后A中的元素:\n"); DelElem(&A,B); //将在顺序表A中出现的B的元素删除 for(i=1;i<=A.length;i++) //显示输出删除后A中所有元素 { flag=GetElem(A,i,&e); if(flag==1) printf("%4d",e); } printf("\n"); system("pause"); }
int main(int argc, const char * argv[]) { Sqlist l; int i; initSqlist(&l); for (i = 0 ; i < 15 ; i++) { InsertElem(&l, i + 1, i + 1); } printf("\nThe content of the list is \n"); for (i = 0 ; i < l.length ; i++) printf("%d ",l.elem[i]); DelElem(&l, 5); printf("\nDelete the fifth element\n"); for (i = 0 ; i < l.length ; i++) printf("%d ",l.elem[i]); printf("\nover\n"); return 0; }