1121 刪除鍊錶中的元素

2021-10-01 07:49:27 字數 772 閱讀 3807

題目描述

給定n個整數,從前往後刪除與m相同的結點的下乙個結點(如果被刪的結點為m則它後面的不處理)。

輸入輸入包含3行:

第一行是乙個整數n(1 <= n <= 200000),代表陣列中元素的個數。

第二行包含n個整數,代表陣列中的n個元素。每個整數之間用空格分隔;每個整數的取值在32位有符號整數範圍以內。

第三行是乙個整數m

輸出輸出只有1行:

將鍊錶內所有待刪除元素刪除以後,輸出鍊錶內的剩餘元素的值,每個整數之間用空格分隔。

樣例輸入

201 3 3 0 -3 5 6 8 3 10 22 -1 3 5 11 20 100 3 9 3

3樣例輸出

1 3 0 -3 5 6 8 3 22 -1 3 11 20 100 3 3

提示[提交][狀態]

這道題可以用陣列,正統解法是用鍊錶,不過我是用兩個陣列做的,也是很簡單的。

#include

#include

using

namespace std;

int a[

1000000

],b[

1000000]=

;int

main()

scanf

("%d"

,&m)

;for

(int i=

0;i+

1for(

int i=

0;ireturn0;

}

刪除鍊錶中的元素

1 問題描述 刪除鍊錶中等於給定值val的所有節點。給出鍊錶 1 2 3 3 4 5 3,和 val 3,你需要返回刪除3之後的鍊錶 1 2 4 5。2 實現思路 遍歷鍊錶,若值等於val,此結點刪除,否則依次檢驗。3 definition for singly linked list.struct...

刪除鍊錶中的元素

題目 刪除鍊錶中等於給定值val的所有節點。樣例 給出鍊錶1 2 3 3 4 5 3,和 val 3,你需要返回刪除3之後的鍊錶 1 2 4 5。思路 通過遍歷鍊錶找出與給定值相同的結點,如果head next的值等於val,則將head next指向head next next,繼續往下遍歷,重複...

刪除鍊錶中的元素

題目要求 刪除鍊錶中等於給定值val的所有節點。樣例 給出鍊錶 1 2 3 3 4 5 3,和 val 3,你需要返回刪除3之後的鍊錶 1 2 4 5。思路 剛開始想著用乙個指標實現,可是老是卡在這個1 1 null這個例子這裡,輸出的結果是runtime error。後面,受啟發,我為什麼不用兩個...