- #ifndef __NG_LIST_H__
- #define __NG_LIST_H__
- typedef struct ELEM {
- int val;
- struct ELEM *next;
- } elem, *pelem;
- int insert(elem** head, int v);
- int insert_sort(elem **list, int v); /* ascendent */
- int insert_sort_unique(elem **list, int v);/* 'strictly' ascendent, no duplicated */
- int append(elem** head, int v);
- void reverse(elem** list);
- void release(elem* list);
- /*
- * 1->2->3 => 3->2->1
- * 1->2->3->4 ->5->6->7->8 => 4->3->2->1 ->8->7->6->5
- * 1->2->3->4 ->5->6->7->8 ->9 => 4->3->2->1 ->8->7->6->5 ->9
- */
- void reverse_unit(elem** list);
- /*
- * list a: 1, 3, 4, 4, 5, 8
- * list b: 2, 3, 6, 7
- * after merge: 1, 2, 3, 4, 5, 6, 7, 8
- * lista & listb should be generated by insert_sort_unique ONLY
- */
- elem* merge(elem** lista, elem** listb);
- #endif
- //该片段来自于http://www.codesnippet.cn/detail/270820135331.html
来源: http://www.codesnippet.cn/detail/270820135331.html