這是自己寫的最長的一次**了 在機房敲了一天。。。 以前一直用list來水鍊錶的題 這次終於體會到痛苦了
#include #include #include #include #include #include using namespace std;
typedef struct node //單鏈表
*s,list;
void create_list1(s head,int n) //順序建立含n個元素的單鏈表(需要乙個移動指標)
}void create_list2(s head,int n) //逆序建立乙個含n個元素的單鏈表(不需要移動指標)
}void output_list(s head)//輸出鍊錶
}bool find_list(s head,int x)//查詢
return 0;
}s reseve_list(s head) //鍊錶逆置
head->next->next=null;//設定尾鍊錶
head->next=pre;//調整煉表頭
return head;
}s merge_list(s head1,s head2) //兩個有序單鏈表合併 返回乙個新的頭指標(的前指標)
else
return p; }}
s get_end_list(s head)//獲得鍊錶的尾指標
void sort_list(s head,s last)//快速排序
fast=fast->next;
} swap(head->date,slow->date);
sort_list(head,t);
sort_list(slow->next,last);
}void delete_node(s head,int m)//刪除節點
}void apart_list(s head,s head1,s head2)//鍊錶拆分(此為奇偶拆分)
else
p=p->next; }}
void delete_same_list(s head)//刪除重複元素
p=p->next; }}
int lenth_list(s head)//計算鍊錶長度
return cnt;
}int main()
return 0;
}
單鏈表相關操作
typedef int sltdatatype typedef struct slistnode slistnode typedef struct slist slist 通過畫圖來理解無頭單向非迴圈鍊錶的相關操作 其中操作在圖中用簡易偽 描述 先將要插入的結點指向第乙個結點,然後頭指標指向插入的結...
C語言 單鏈表相關操作
結構體定義 struct link list typedef link list list 將資料封裝成節點 資料要想放入鍊錶中必須將資料做成節點,由於很多操作都需要所以單獨寫成乙個函式,這裡只拿int型別舉例,其他資料型別差別不大 list create node int data 修改遍歷及查詢...
單鏈表相關演算法
include include using namespace std typedef int elemtype typedef struct node nodetype nodetype create s next null return head void dis nodetype head w...