<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>

          求鏈表的中間結點

          共 1884字,需瀏覽 4分鐘

           ·

          2021-09-05 22:57

          點擊上方 三分鐘學前端,關注公眾號

          回復交流,加入前端編程面試算法每日一題群


          面試官也在看的前端面試資料

          給定一個帶有頭結點 head 的非空單鏈表,返回鏈表的中間結點。

          如果有兩個中間結點,則返回第二個中間結點。

          示例 1:

          輸入:[1,2,3,4,5]
          輸出:此列表中的結點 3 (序列化形式:[3,4,5])
          返回的結點值為 3 。 (測評系統(tǒng)對該結點序列化表述是 [3,4,5])。

          注意,我們返回了一個 ListNode 類型的對象 ans,這樣:
          ans.val = 3, ans.next.val = 4, ans.next.next.val = 5, 以及 ans.next.next.next = NULL.

          示例 2:

          輸入:[1,2,3,4,5,6]
          輸出:此列表中的結點 4 (序列化形式:[4,5,6])

          由于該列表有兩個中間結點,值分別為 3 和 4,我們返回第二個結點。

          提示:

          給定鏈表的結點數(shù)介于 1 和 100 之間。

          解法一:遍歷將節(jié)點放在數(shù)組中,然后取中間值

          var middleNode = function (head{
            if (!head) return []
            var arr = []
            while (head) {
              arr.push(head)
              head = head.next
            }
            return arr[Math.ceil((arr.length - 1) / 2)]
          };

          解法二:利用雙指針,快指針走兩步,慢指針走一步,快指針走完,慢指針則為中間值

          var middleNode = function (head{
            if (!head) return []
            var fast = slow = head
            while (fast && fast.next) {
              slow = slow.next
              fast = fast.next.next
            }
            return slow
          };

          來源:https://github.com/sisterAn/JavaScript-Algorithms

          最后

          歡迎關注「三分鐘學前端」,回復「交流」自動加入前端三分鐘進階群,每日一道編程算法面試題(含解答),助力你成為更優(yōu)秀的前端開發(fā)!

          號內回復:

          網(wǎng)絡」,自動獲取三分鐘學前端網(wǎng)絡篇小書(90+頁)
          JS」,自動獲取三分鐘學前端 JS 篇小書(120+頁)
          算法」,自動獲取 github 2.9k+ 的前端算法小書
          面試」,自動獲取 github 23.2k+ 的前端面試小書
          簡歷」,自動獲取程序員系列的 120 套模版
          》》面試官也在看的前端面試資料《《
          “在看和轉發(fā)”就是最大的
          瀏覽 33
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <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>
                  免费全黄A片免费播放 | 男人爱天堂资源网 | 亚洲一区欧美一区 | 日逼AV | 蜜乳在线视频 |