這個程式是資料結構中的迴圈鍊錶,題目——設有乙個迴圈鍊錶,其結點值均為正整數,且按絕對值從小到大鏈結。試寫出乙個演算法,將此迴圈鍊錶中的結點按值從小到大鏈結。
首先定義標頭檔案
#include //輸入輸出等系統函式在這個標頭檔案中
#include //標準庫標頭檔案
定義結構體
typedef struct node
lnode,*linklist;
typedef是給結構體型別宣告了另乙個名字,上面的**可以等價於
struct node ;
typedef struct node lnode;
typedef struct node* linklist;
函式宣告
linklist new_list();
void scan_list();
void insert_list(linklist head,int x,int d);
void rank_list(linklist head);
這是建立乙個新鍊錶的函式,確定了頭指標的位置
linklist new_list()
鍊錶掃瞄函式,輸出鍊錶中的資料
void scan_list(linklist head)
dowhile(p!=head);
return;
}
插入函式,將資料插入鍊錶中
void insert_list(linklist head,int x,int d)
排序函式,實現題目要求
將迴圈鍊錶中的結點按值從小到大鏈結
void rank_list(linklist head)
else p=k;
k=j;
} return;
}
int main()
完整**如下
#include
#include
typedef struct node
lnode,*linklist;
linklist new_list();
void scan_list();
void insert_list(linklist head,int x,int d);
void rank_list(linklist head);
linklist new_list()
void scan_list(linklist head)
dowhile(p!=head);
return;
}void insert_list(linklist head,int x,int d)
void rank_list(linklist head)
else p=k;
k=j;
} return;
}int main()
資料結構 迴圈鍊錶的c語言實現
circlelist h ifndef mycirclelist h define mycirclelist h include include include typedef void circlelist typedef struct tag circlelistnode circlelistn...
資料結構 雙向迴圈鍊錶(C語言)
include include define maxsize 10010 define elemtype int typedef struct dulnodedulnode,dulinklist 建立雙向迴圈鍊錶 dulinklist createlist int n p next head hea...
資料結構 C語言鍊錶實現
資料結構 c語言鍊錶實現 目錄 靜態單鏈表實現 動態單鏈表實現 雙向鍊錶實現 迴圈單鏈表 我學資料結構的時候也是感覺很困難,當我學完後我發現了之所以困難時因為我沒有系統的進行學習,而且很多教授都只是注重資料結構思想,而忽略了 方面,為此我寫了這些博文給那些試圖自學資料結構的朋友,希望你們少走彎路 我...