刪除鍊錶中值為x的元素結點 java語言

2021-08-08 16:17:39 字數 930 閱讀 6751

一、題目:給乙個鍊錶,將值為x的元素刪除。

比如,乙個鍊錶為:, 然後刪除的值x=1,最終輸出的鍊錶為:

二、思路:

遍歷整個鍊錶,如果第i個結點的值等於刪除的值x,則將第(i-1)節點的指標指向(i+1)的結點,就相當於跳過了第i個結點。

三、思路**實現:

/*

* 傳入鍊錶的頭結點和整形值value,刪除元素x

*/ public void delete_element(node head ,int x)

else

p=p.next; //如果不是刪除的元素,就將頭結點的指標指向第乙個結點,再一次迴圈,不能寫作p.next=p.next

} }

四、完整**實現:

package list;

public class list

/* * 初始化鍊錶,將資料寫入鍊錶當中

*/public void list_init(node node ,int data){

node t=new node();

t=node;

for(int i=0;i

(第一行鍊錶元素,第二行是刪除1之後的鍊錶元素)

鍊錶 遞迴刪除不帶頭結點鍊錶所有x元素

王道p37 t1 設計乙個遞迴演算法,刪除不帶頭結點的單鏈表l中所有值為x的結點。王道上的答案絕對是錯的,我自己想了乙個 函式主體 linklist del x linklist prior,linklist l,int x else if l data x 呼叫方法 l del x null,l,...

專案一 刪除結點值為X的結點

問題及 檔名稱 words.cpp 作 者 尚 月 完成日期 2015年02月08日 版 本 號 v1.0 問題描述 編寫函式,刪除鍊錶中有值為x的結點。程式輸入 若干正數 以0或乙個負數結束 建立鍊錶。程式輸出 輸出刪除後的鍊錶 include using namespace std struct...

刪除鍊錶的結點

1.問題描述 給定鍊錶的頭結點和待刪除結點,要求刪除鍊錶的結點要求時間複雜度為o 1 來自 劍指offer 2.分析 我們都知道鍊錶的要想訪問某個結點必須要從頭結點挨個遍歷,並且單鏈表我們沒有指向前驅的結點,因此我們可以用狸貓換太子 用這個待刪除結點的下個結點裡面的內容,複製到這個待刪除結點,然後刪...