
這篇文章主要是初步解釋鏈表中的各種函式
文章目錄
- 1.CreateNode
- 2.SListFind
- 3.SListPrint
- 4.SListInsert
- ==5.SListErase==
- 6.SListPushFront
- 7.SListPushBack
- 8.SListPopBack
- 9.SListPopfront
- 10.SListDestory
1.CreateNode
作用:創建一個值為 x 的新節點,然后搭配其他函式使用

PS:
- 注意回傳型別為結構體指標
- 要使用動態開辟空間
2.SListFind
作用:在鏈表中找到 x 的下標,然后回傳 x 的地址
?? SListFind因為回傳的是地址,所以可以搭配Erase、Insert使用,比較高效

至于怎么搭配使用 下篇文章會出詳細的搭配使用的方法~
3.SListPrint
作用:遍歷、列印鏈表

4.SListInsert
作用:在指定位置pos后(上文中使用SListFind找到的地址)
?? 插入一個新節點
?? (需要SListFind提供地址搭配使用,并且搭配CreateNode提供新節點地址)

5.SListErase
作用:
?? 將pos位置的節點洗掉
?? (同上,均需要SListFind提供地址搭配使用)

ps:
- 使用assert可以更好的提高debug的效率,使粗心導致的傳參錯誤易于發現
- 洗掉的時候根據pos的位置考慮頭刪和中間洗掉
- 注意節點的指向
6.SListPushFront
作用:
?? 在頭部插入一個新節點

7.SListPushBack
作用:
?? 在尾部插入一個新節點
其中一個節點和多個節點的情況可以合并(根據能否找到具體的tail來討論)

PS:
- 需要考慮空表、一個節點、和多個節點的情況(根據tail分類套路)
8.SListPopBack
作用:
?? 洗掉尾部的節點

PS:
- List item
9.SListPopfront
作用:
?? 洗掉頭節點
PS:
- 需要考慮只有一個節點、多個節點兩種情況
10.SListDestory
作用:
?? 銷毀鏈表、釋放空間
> PS:
- List item
最后:
??詳細的原始碼會在下一篇文章中提供(到時候會在這里提供超鏈接),并且也會出一篇手擼鏈表中的細節性問題,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/396197.html
標籤:其他
上一篇:R語言使用edit函式在Rsudio中生成資料編輯器(在windows中生成編輯器)、在編輯器中輸出需要的資料生成最終的dataframe
下一篇:kali linux基本命令

