0131 链表排序
来源:互联网 发布:网络搜索引擎的文章 编辑:程序博客网 时间:2024/06/06 07:05
typedef struct node
{
int data;
struct node* pNext;
}Node;
Node * SortLinkList (Node * pHead);
Node* SortLinkList(Node *pHead)
{
/* 1, defines and initialize */
Node *q = NULL;
Node *p = NULL;
Node *i = NULL;
Node *j = NULL;
if (NULL == pHead)
{
return NULL;
}
if (NULL == pHead->pNext)
{
return pHead;
}
/* 2, iterate and insert */
j = pHead->pNext;
i = pHead->pNext->pNext;
while (NULL != i)
{
q = pHead;
p = q->pNext;
while (p != i && i->data >= p->data)
{
q = p;
p = p->pNext;
}
if (p != i)
{
j->pNext = i->pNext;
q->pNext = i;
i->pNext = p;
i = j->pNext;
}
else
{
j = i;
i = i->pNext;
}
}
/* 3, return */
return pHead;
}
- 0131 链表排序
- 链表排序 归并排序
- 链表排序--选择排序
- 链表排序--快速排序
- 链表排序--归并排序
- 排序3:插入排序(普通插入排序 + 折半插入排序 + 链表插入排序 + 希尔排序)
- LIST排序, Struct排序, qsort排序, STL::LIST sort排序, 链表排序
- 单向链表排序:快速排序和归并排序
- 单向链表排序-归并排序
- 链表排序,使用插入排序,
- 链表排序-直接插入排序
- 链表的一种排序---冒泡排序
- c 链表排序 - 选择排序
- 链表排序之插入排序
- 插入排序进行链表排序
- 优化冒泡排序 & 链表选择排序
- 链表排序之选择排序
- 链表排序之冒泡排序
- Java Reflection-JAVA反射
- iframe 父窗口和子窗口相互的调用方法
- Configuration subversion as windows service.
- 希望对入门级的程序员有所帮助,有时间不妨看看
- Spring配置(含事务)
- 0131 链表排序
- 通用对话框中的查找/替换对话框CFindReplaceDialog在WTL中的使用
- 阿凡达,三百块,震憾,值了。。。。
- VS2003安装 FrontPage的问题
- 不说假话办不成大事
- Spring基础
- SQL时间格式转换大全
- JavaScript精粹读书笔记(7)
- Java关键字final、static使用总结