您好,欢迎来到微智科技网。
搜索
您的当前位置:首页对链表进行排序,使其递增有序

对链表进行排序,使其递增有序

来源:微智科技网

算法实现:


//对链表进行排序
void Sort(LinkList& L)
{
	LNode* p = L->next->next;    //p用于遍历原链表中第二个结点往后的那些结点
	L->next->next = NULL;       //建立一个只有一个结点的有序链表

	LNode* pre, * temp, * q;

	while (p != NULL)
	{
		temp = p->next;  //用于取得链表p的下一个节点

		//找到p结点在L链表中的位置,将其插入该位置
		for (pre = L, q = L->next; q != NULL; pre = q, q = q->next)
		{
			if (q->data > p->data)
				break;	
		}
		p->next = pre->next;
		pre->next = p;

		p = temp;
	}
}

 算法效果:

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 7swz.com 版权所有 赣ICP备2024042798号-8

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务