<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          ?LeetCode刷題實(shí)戰(zhàn)237:刪除鏈表中的節(jié)點(diǎn)

          共 1745字,需瀏覽 4分鐘

           ·

          2021-04-18 18:20

          算法的重要性,我就不多說了吧,想去大廠,就必須要經(jīng)過基礎(chǔ)知識和業(yè)務(wù)邏輯面試+算法面試。所以,為了提高大家的算法能力,這個(gè)公眾號后續(xù)每天帶大家做一道算法題,題目就從LeetCode上面選 !

          今天和大家聊的問題叫做 刪除鏈表中的節(jié)點(diǎn),我們先來看題面:
          https://leetcode-cn.com/problems/delete-node-in-a-linked-list/

          Write a function to delete a node in a singly-linked list. You will not be given access to the head of the list, instead you will be given access to the node to be deleted directly.

          請編寫一個(gè)函數(shù),使其可以刪除某個(gè)鏈表中給定的(非末尾)節(jié)點(diǎn)。傳入函數(shù)的唯一參數(shù)為 要被刪除的節(jié)點(diǎn) 。


          示例


          示例 1:

          輸入:head = [4,5,1,9], node = 5
          輸出:[4,1,9]
          解釋:給定你鏈表中值為 5 的第二個(gè)節(jié)點(diǎn),那么在調(diào)用了你的函數(shù)之后,該鏈表應(yīng)變?yōu)?4 -> 1 -> 9.

          示例 2:

          輸入:head = [4,5,1,9], node = 1
          輸出:[4,5,9]
          解釋:給定你鏈表中值為 1 的第三個(gè)節(jié)點(diǎn),那么在調(diào)用了你的函數(shù)之后,該鏈表應(yīng)變?yōu)?4 -> 5 -> 9.

          提示:

          鏈表至少包含兩個(gè)節(jié)點(diǎn)。
          鏈表中所有節(jié)點(diǎn)的值都是唯一的。
          給定的節(jié)點(diǎn)為非末尾節(jié)點(diǎn)并且一定是鏈表中的一個(gè)有效節(jié)點(diǎn)。
          不要從你的函數(shù)中返回任何結(jié)果。



          解題

          與下一個(gè)節(jié)點(diǎn)交換
          從鏈表里刪除一個(gè)節(jié)點(diǎn)node的最常見方法是修改之前節(jié)點(diǎn)的next指針,使其指向之后的節(jié)點(diǎn)。
          因?yàn)椋覀儫o法訪問我們想要?jiǎng)h除的節(jié)點(diǎn) 之前 的節(jié)點(diǎn),我們始終不能修改該節(jié)點(diǎn)的 next 指針。相反,我們必須將想要?jiǎng)h除的節(jié)點(diǎn)的值替換為它后面節(jié)點(diǎn)中的值,然后刪除它之后的節(jié)點(diǎn)。


          因?yàn)槲覀冎酪獎(jiǎng)h除的節(jié)點(diǎn)不是列表的末尾,所以我們可以保證這種方法是可行的。

          class Solution {
          public:
              void deleteNode(ListNode* node) {
                  node->val = node->next->val;
                  node->next = node->next->next;
              }
          };


          好了,今天的文章就到這里,如果覺得有所收獲,請順手點(diǎn)個(gè)在看或者轉(zhuǎn)發(fā)吧,你們的支持是我最大的動(dòng)力 。

          上期推文:

          LeetCode1-220題匯總,希望對你有點(diǎn)幫助!

          LeetCode刷題實(shí)戰(zhàn)221:最大正方形

          LeetCode刷題實(shí)戰(zhàn)222:完全二叉樹的節(jié)點(diǎn)個(gè)數(shù)

          LeetCode刷題實(shí)戰(zhàn)223:矩形面積

          LeetCode刷題實(shí)戰(zhàn)224:基本計(jì)算器

          LeetCode刷題實(shí)戰(zhàn)225:用隊(duì)列實(shí)現(xiàn)棧

          LeetCode刷題實(shí)戰(zhàn)226:翻轉(zhuǎn)二叉樹

          LeetCode刷題實(shí)戰(zhàn)227:基本計(jì)算器 II

          LeetCode刷題實(shí)戰(zhàn)228:匯總區(qū)間

          LeetCode刷題實(shí)戰(zhàn)229:求眾數(shù) II

          LeetCode刷題實(shí)戰(zhàn)230:二叉搜索樹中第K小的元素

          LeetCode刷題實(shí)戰(zhàn)231:2的冪

          LeetCode刷題實(shí)戰(zhàn)232:用棧實(shí)現(xiàn)隊(duì)列

          LeetCode刷題實(shí)戰(zhàn)233:數(shù)字 1 的個(gè)數(shù)

          LeetCode刷題實(shí)戰(zhàn)234:回文鏈表

          LeetCode刷題實(shí)戰(zhàn)235:二叉搜索樹的最近公共祖先

          LeetCode刷題實(shí)戰(zhàn)236:二叉樹的最近公共祖先


          瀏覽 22
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  激情综合色 | 日韩乱论网站 | 五月丁香激情开心网 | www三级网站 | 女人十八岁毛片 |