單鏈表基本演算法

2021-08-18 07:27:54 字數 1269 閱讀 6534

#include

#include

typedef int linktype;

typedef struct linknodelinklist;

//鍊錶初始化

void linklistinit(linklist **head)

//鍊錶尾部插入

void linklistpushback(linklist **head, linktype valve)

else

}//刪除鍊錶尾部元素

void linklistpopback(linknode** head)

else

}//列印鍊錶

void print(linklist *head)

}//煉表頭插

void linklistpushfront(linknode** head, linktype value)

else

}//煉表頭刪

void linklistpopfront(linknode** head)

else

}//查詢元素在鍊錶中的位置 ,返回這個值對應的節點位址

linknode* linklistfind(linknode* head, linktype to_find)

}return null;

}//在指定pos節點的前面插入新節點

void linklistinsertfront(linknode** head, linknode* pos, linktype value)

else //如果pos不是頭結點

else //沒有找到pos

}}void linklistinsertafter(linknode** head, linknode* pos, linktype value)

else

}}void linklisterase(linknode** head, linknode* pos)

else

return;

}else

else

return;}}

}void linklistremove(linknode** head, linktype to_delete)

else

}else

else

return;

}}int linklistempty(linknode* head)

int main()

C 單鏈表的基本演算法

線性表是最簡單,最常用的一種資料結構。線性表的邏輯結構是n個資料元素的有限序列 a1,a2,an 而線性表的物理結構,我們已經學習過順序表,也就是陣列 另一種線性表的物理結構 鍊錶 單鏈表 singly linked list 也稱線性鍊錶。每個元素占用乙個節點 node 乙個節點至少包含兩個域,乙...

單鏈表各種基本運算的演算法

include includetypedef char elemtype typedef struct lnode linknode 宣告單鏈表節點型別 void createlistf linknode l,elemtype a,int n 頭插法建立單鏈表 void createlistr li...

單鏈表演算法

遍歷 就是把單鏈表中的各個節點挨個拿出來,就叫遍歷 遍歷要點 不能遺漏,不能重複,追求效率 方法 從頭指標 頭節點 順著鍊錶掛接指標依次訪問鍊錶的各個節點,取出這個節點的資料,然後再往下乙個節點,知道最後乙個節點,結束返回 include include include 構建乙個鍊錶的節點 stru...