1 #include 2 #include 3執行效果:4using
namespace
std;56
class
listnode
9 listnode(int
x) : val(x), next(nullptr) {}
10 listnode(int x, listnode *next) : val(x), next(next) {}
1112
public:13
intval;
14 listnode *next;
15};
1617
class
solution else31}
32 listnode *curnode;
33if (n != 0) else
40delete
curnode;
41return;42
}43//尾插法插入鍊錶元素
44void insertnodeattail(listnode *&head, int
val)
51while (currentnode->next !=nullptr)
54 currentnode->next =newnode;
55return;56
}57//列印鍊錶元素
58void printflistnode(listnode *head)
63 std::cout << "
null
"<
64return;65
}66//刪除鍊錶中給定值節點
67void removenode(listnode *&head, int
val)
73while (current->next != nullptr && current->val !=val)
77if (current->val ==val) else
83delete
current;84}
85return;86
}87//獲取當前要刪除值得節點指標
88 listnode *getremovenode(listnode *head, int
val)
93while (current->next !=nullptr)
97 current = current->next;98}
99if (current->val ==val)
102return
nullptr;
103}
104};
105int
main()
106;
109 listnode *head =nullptr;
110//
插入節點
111for (const auto &v : vec)
114 test->printflistnode(head); //
1->2->3->4->5->6->7->null
115//
刪除頭結點
116 test->removenode(head, 1
);117 test->printflistnode(head); //
2->3->4->5->6->7->null
118//
刪除尾結點
119 test->removenode(head, 7
);120 test->printflistnode(head); //
2->3->4->5->6->null
121//
刪除倒數第n個節點
122 test->removenthfromend(head, 1
);123 test->printflistnode(head); //
2->3->4->5->null
124 test->removenthfromend(head, 4
);125 test->printflistnode(head); //
3->4->5->null
126 test->removenthfromend(head, 2
);127 test->printflistnode(head); //
3->5->null
128delete
test;
129 system("
pause");
130return0;
131 }
刪除鍊錶倒數第N個節點
1.問題 給定乙個鍊錶,刪除鍊錶的倒數第 n 個節點,並且返回鍊錶的頭結點。示例 給定乙個鍊錶 1 2 3 4 5,和 n 2.當刪除了倒數第二個節點後,鍊錶變為 1 2 3 5.2.演算法 暴力破解法 先計算得出鍊錶的長度m,然後將鍊錶長度和所給倒數字置相減,即loc m n 1,得出刪除節點的前...
刪除鍊錶倒數第n個節點
leetcode 題目 給定乙個鍊錶,刪除鍊錶的倒數第 n 個節點,並且返回鍊錶的頭結點。給定乙個鍊錶 1 2 3 4 5,和 n 2.當刪除了倒數第二個節點後,鍊錶變為 1 2 3 5.note n 鍊錶長度時,刪除頭節點 n 0時,不做任何操作。當第乙個指標first 比第二個指標領先n步,然後...
刪除鍊錶的倒數第N個節點
與查詢鍊錶的倒數第n個節點對比只改動了一行 查到倒數第n個節點後,將該節點的後續指標p1.next p1.next.next 即可 package 鍊錶中 public class nthnodefromendoflist return m 刪除倒數第n個節點 param args public s...