![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
顺序表
大鞠为重
漂泊的大学生
展开
-
删除链表倒数几位结点
/*链式表删除倒数第几位值*/ int DellList(Seqlist *seqlist,int index,int *e) { Node *p,*pre; int i=0,j=0; p=L-next; pre=L; while(p->next == NULL)//遍历链表找到链表结点长度; { p=p->next; j++; } if(index > j) printf(...原创 2021-10-16 20:12:19 · 48 阅读 · 0 评论 -
线性表的逆置(两种方法的短发思想)
/*线性表的逆置*/ void(Seqlist *seqlist) /*顺序表的逆置*/ { Node *p; int n=0,i=0,j=0,k=0; n=L-last/2 while(n<=L-last) { k=p->data[i]; p->data[i]=p->data[L-last-i]; i++; } return 0; } /*链式表的逆置*/ /*利...原创 2021-10-16 19:35:54 · 246 阅读 · 0 评论 -
设计算法删除递增顺序表的重复结点。
{ Node *p; int i=0,j=0; while(i<=L->last)//last为数组长度; { if(p->data[i]!=p->data[i+1]) { p->data[j]=p->data[i]; i++; j++; } else { while(p->data[i]!=p->data[i+1]) ...原创 2021-10-16 17:17:53 · 225 阅读 · 0 评论 -
顺序表中删除介于X和Y的所有元素使其空间复杂度为O(1)的算法思想;
Node *q; int i=0,j=0; while(i<=l->last) { if(q->data[i]<X&&q->data[i]>Y) { q->data[j] = q->data[i]; i++; j++; } else i++; } l->last=j-1;//这里是因为while循...原创 2021-10-16 17:07:22 · 792 阅读 · 0 评论