輸入乙個單向鍊錶和乙個節點的值,從單向鍊錶中刪除等於該值的節點,刪除後如果鍊錶中無節點則返回空指標。
鍊錶結點定義如下:
struct listnode
;詳細描述:
本題為考察鍊錶的插入和刪除知識。
鍊錶的值不能重複
構造過程,例如
1 -> 2
3 -> 2
5 -> 1
4 -> 5
7 -> 2
最後的鍊錶的順序為 2 7 3 1 5 4
刪除 結點 2
則結果為 7 3 1 5 4
輸入:1 輸入鍊錶結點個數
2 輸入頭結點的值
3 按照格式插入各個結點
4 輸入要刪除的結點的值
輸出刪除結點後的序列
樣例輸入:
5樣例輸出:23 2
4 35 2
1 43
2 5 4 1
#include#include using namespace std;
typedef struct listnode
listnode;
///建立鍊錶,返回頭結點
listnode* creatlist()
p_find = p_find->m_pnext;}}
return head;
}listnode* deletenode(listnode* head,int value)
while(p!=null)
p = p->m_pnext;
}return null;
}int main()
return 0;
}
從單向鍊錶中刪除指定值的節點
輸入乙個單向鍊錶和乙個節點的值,從單向鍊錶中刪除等於該值的節點,刪除後如果鍊錶中無節點則返回空指標。鍊錶結點定義如下 struct listnode int m nkey listnode m pnext 詳細描述 本題為考察鍊錶的插入和刪除知識。鍊錶的值不能重複 構造過程,例如 1 2 3 2 5...
單向鍊錶刪除節點
單向鍊錶刪除節點的乙個技巧,這個是在 程式設計之美 上面看到的,可以用來對付一些演算法題。有時候會遇到這種情況,單鏈表提供乙個指標,要求要刪除指標指向的節點。如下 考慮到釋放記憶體,還再需要乙個指標 我們具體一下,有這麼乙個單向鍊錶,這個鍊錶的節點比較簡單,資料域只有乙個整型 並且當前的指標 ite...
單向鍊錶刪除節點
include include include include 使用隨機數的標頭檔案 using namespace std class list list del ptr list head,list ptr int main srand unsigned time null 以時間為隨機數的種子...