單向鍊錶不同位置的新增,刪除節點操作

2021-10-06 04:31:04 字數 1382 閱讀 4640

一種線性的資料儲存方式的資料結構,由若干個節點組成,物理上,非連續,非順序的儲存方式

物理儲存方式:隨機儲存

資料訪問方式:順序訪問

單向鍊錶:每個節點包含兩部分:一部分存資料,一部分存指向下乙個節點的位址值

雙向鍊錶:每個節點在單鏈表基礎上,還儲存了上乙個節點的位址值

;//空鍊錶

if(size ==0)

else

if(index ==0)

else

if(index == size)

else

size++;}

/** * 刪除指定為位置節點

* @param index

*/public

void

deletenode

(int index)

throws exception

node temp = null;

//刪除頭部節點

if(index ==0)

else

if(index == size-1)

else

size--;}

/** * 獲取指定位置節點

** @param index 指定位置

* @return 鍊錶指定位置節點

*/public node get

(int index)

throws exception

node temp = head;

for(

int i =

0; i < index; i++

)return temp;

}/**

* 遍歷整個鍊錶輸出節點的值

*/private

void

output()

}public

static

void

main

(string[

] args)

throws exception

單向鍊錶刪除節點

單向鍊錶刪除節點的乙個技巧,這個是在 程式設計之美 上面看到的,可以用來對付一些演算法題。有時候會遇到這種情況,單鏈表提供乙個指標,要求要刪除指標指向的節點。如下 考慮到釋放記憶體,還再需要乙個指標 我們具體一下,有這麼乙個單向鍊錶,這個鍊錶的節點比較簡單,資料域只有乙個整型 並且當前的指標 ite...

單向鍊錶刪除節點

include include include include 使用隨機數的標頭檔案 using namespace std class list list del ptr list head,list ptr int main srand unsigned time null 以時間為隨機數的種子...

單向鍊錶節點的刪除

單向鍊錶的建立在這裡不在贅述,詳細請看另一篇文章 單向鍊錶的建立 在本篇文章中,主要通過舉例的方式來幫大家理解單向鍊錶節點的刪除。本篇文章中建立節點用如下表示 typdef struct node elemsn 在鍊錶節點的刪除中,可以分為兩種情況 刪除頭節點 pdel head 定義指標指向待刪節...