大家好,今天小编关注到一个比较有意思的话题,就是关于单链表排序c语言的问题,于是小编就整理了1个相关介绍单链表排序c语言的解答,让我们一起看看吧。
已知单链表La中数据元素按非递减有序排列.试写一个算法?
s表示要插入的节点,***设s已被赋值。 L表示目的链表,且L.head仅为头指针,不存储信息 Node* q = L.head Node* p = L.head->next while( p != NULL ) { if( s->value <= p->value ) // 找到了s该插入的位置,并且此时p,q已记录下要插入的位置 break else q = p p = p->next } // 将s节点插入到q,p节点之间 s->next = p; q->next = s; 画画图就出来了,不过不要漏考虑插入位置在表头或表尾的情况
到此,以上就是小编对于单链表排序c语言的问题就介绍到这了,希望介绍关于单链表排序c语言的1点解答对大家有用。
(图片来源网络,侵删)
版权声明:本文来源于网络,不代表本站立场,如转载内容涉及版权等问题,请联系邮箱:83115484@qq.com,我们会予以删除相关文章,保证您的权利。