迴圈雙鏈表演算法

2021-10-23 06:20:59 字數 894 閱讀 6896

設乙個帶頭結點的迴圈雙鏈表 dl,結點的值可能重複。設

計乙個演算法輸出 dl 所有元素的值,引數 d=0 時按照前驅方向輸出,d=1 時按照

後繼方向輸出。

(記得那次作業裡有乙個寫的很麻煩沒啥意思好像就是這個)

//建立乙個迴圈單鏈表,然後設乙個輸出函式

#include

#include

#include

#define elemtype int

//雙向迴圈鍊錶的定義

typedef

struct dulnode

dulnode,

*dulinklist;

// 頭插法建立鍊錶

dulinklist creatdnode

(dulinklist *head,

int len)

(*head)

->prior =

(*head)

->next =

(*head)

;//表頭結點的指標指向自己

p =*head;

printf

("請開始輸入:\n");

for(

int i =

0; i < len; i++

)return

*head;

}//輸出函式

void

printdulink

(dulnode *head,

int d)

printf

("\n");

}if(d ==1)

//順著輸出

printf

("\n");

}}intmain()

return0;

}

迴圈雙鏈表

迴圈雙鏈表的定義和基本運算 include include typedef int elemtype typedef struct dnode 定義雙鏈表結點型別 dlinklist void createlistf dlinklist l,elemtype a,int n 頭插法建雙鏈表 void...

迴圈雙鏈表應用

問題描述 設非空線性表ha和hb都用帶頭節點的迴圈雙鏈表表示。設計乙個演算法insert ha,hb,i 其功能是 i 0時,將線性表hb插入到線性表ha的最前面 當i 0時,將線性表hb插入到線性表ha中第i個節點的後面 當i大於等於線性表ha的長度時,將線性表hb插入到線性表ha的最後面。請在實...

C 迴圈雙鏈表

雙鏈錶比單鏈表多了乙個prev指標域,用來指向乙個節點的前乙個節點,操作起來比單鏈表快捷許多,可以從前從後遍歷整個鍊錶。程式 include include typedef struct dbnode dbnode typedef dbnode dblink void create empty li...