![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
链表
yangalbert
这个作者很懒,什么都没留下…
展开
-
判断单链表是否有环
链表结构: struct List { int data; List* next; }; (1)判断单链表是否有环 采用追赶法,设置两个指针p和q,从链表表头开始,p每一步走两个节点,q每一步走一个节点,如果链表有环则p和q必相遇。 代码如下 // 判断链表是否有环,时间复杂度O(n),空间复杂度O(1) List* hasLoopInList( List* head )原创 2012-03-23 10:45:01 · 950 阅读 · 0 评论 -
单链表快速排序算法实现
单链表结构: typedef int ElemType; typedef struct ListNode* List; struct ListNode { ElemType key List next; }; 实现代码如下: void QuickSort( List head, List tail ) { if ( head->next == tail || he原创 2012-05-17 20:39:13 · 7788 阅读 · 8 评论 -
归并排序:数组和单链表实现
1. 数组的归并排序 // 归并排序的递归调用 void mergeSort(int* A, int beg, int end, int* B) { if ( beg >= end ) { return; } int mid = (beg + end ) / 2; mergeSort( A, beg, mid, B); mergeSort( A, mid+1, end, B)原创 2012-09-03 13:29:54 · 3732 阅读 · 0 评论