華為機試 HJ48-從單向鏈表中刪除指定值的節點

華為機試 HJ48-從單向鏈表中刪除指定值的節點

題目描述:

描述
輸入一個單向鏈表和一個節點的值,從單向鏈表中刪除等于該值的節點,
刪除后如果鏈表中無節點則返回空指針。

鏈表的值不能重復。

構造過程,例如輸入一行數據為:
6 2 1 2 3 2 5 1 4 5 7 2 2
則第一個參數6表示輸入總共6個節點,第二個參數2表示頭節點值為2,
剩下的2個一組表示第2個節點值后面插入第1個節點值,為以下表示:
1 2 表示為
2->1
鏈表為2->1

3 2表示為
2->3
鏈表為2->3->1

5 1表示為
1->5
鏈表為2->3->1->5

4 5表示為
5->4
鏈表為2->3->1->5->4

7 2表示為
2->7
鏈表為2->7->3->1->5->4

最后的鏈表的順序為 2 7 3 1 5 4

最后一個參數為2,表示要刪掉節點為2的值
刪除 結點 2

則結果為 7 3 1 5 4

數據范圍:鏈表長度滿足
1≤n≤1000 ,節點中的值滿足
0≤val≤10000

測試用例保證輸入合法

輸入描述:
輸入一行,有以下4個部分:
1 輸入鏈表結點個數
2 輸入頭結點的值
3 按照格式插入各個結點
4 輸入要刪除的結點的值

輸出描述:
輸出一行
輸出刪除結點后的序列,每個數后都要加空格

示例1
輸入:
5 2 3 2 4 3 5 2 1 4 3

輸出:
2 5 4 1

說明:
形成的鏈表為2->5->3->4->1
刪掉節點3,返回的就是2->5->4->1
示例2
輸入:
6 2 1 2 3 2 5 1 4 5 7 2 2

輸出:
7 3 1 5 4

說明:
如題

解題思路:

借助鏈表list的一些方法做查找、插入、刪除等操作,C++中可以使用STL中的list類。

C++實現代碼:

#include <iostream>
#include <list>
#include <algorithm>
using namespace std;

int main() {
    int n;
    list<int> myList;
    while (cin >> n) { // 注意 while 處理多個 case
        int head;
        cin >> head;
        myList.push_front(head);
        int curVal, preVal;
        for (int i = 1; i < n; i++) {
            cin >> curVal >> preVal;
            auto iter = std::find(myList.begin(), myList.end(), preVal);
            if (iter != myList.end()) {
                myList.insert(++iter, curVal);
            }
        }
        int target;
        cin >> target;
        myList.remove(target);

        // 輸出鏈表的每個值
        for (auto iter = myList.begin(); iter != myList.end(); iter++) {
            std::cout << *iter << " ";
        }
        std::cout << std::endl;
    }

    return 0;
}
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,505評論 6 533
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,556評論 3 418
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,463評論 0 376
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,009評論 1 312
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,778評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,218評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,281評論 3 441
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,436評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,969評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,795評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,993評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,537評論 5 359
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,229評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,659評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,917評論 1 286
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,687評論 3 392
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,990評論 2 374

推薦閱讀更多精彩內容