当前位置:首页 > 数据结构(02331) > 正文内容

已知带头结点的单链表L是一个递增有序表,试写一高效算法,删除表中值大于min且小于max的结点(若表中有这样的结点),同时释放被删结点的空间,这里min和max是两个给定的参数。

高老师2年前 (2024-03-26)数据结构(02331)7

已知带头结点的单链表L是一个递增有序表,试写一高效算法,删除表中值大于min且小于max的结点(若表中有这样的结点),同时释放被删结点的空间,这里min和max是两个给定的参数。

算法如下: LinkLi st*delete(L,min,max) LinkList*L; int min , max; { LinkList *p, *q , *s , *k; if (L!=NULL) { q=L ;p=L—>next; while (p!=NULL&&p—>data﹤=min) { q=p ;p=p—﹥next;} while (p!=NULL&&p—>data﹤max ) p= p—>next; s=q>next; while (s!=p) { k=s;q—>next=s—>next;free(k)} }

扫描二维码免费使用微信小程序搜题/刷题/查看解析。

版权声明:本文由翰林刷题小程序授权发布,如需转载请注明出处。

本文链接:https://doc.20230611.cn/post/431939.html

分享给朋友: