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

          【前端算法指南】20. 有效的括號(棧)

          共 1884字,需瀏覽 4分鐘

           ·

          2021-06-21 22:32

          題目描述

          給定一個只包括'(',')','{','}','[',']'的字符串,判斷字符串是否有效。

          有效字符串需滿足:

          左括號必須用相同類型的右括號閉合。左括號必須以正確的順序閉合。注意空字符串可被認(rèn)為是有效字符串。

          示例 1:

          輸入: "()"
          輸出: true

          示例 2:

          輸入: "()[]{}"
          輸出: true

          示例 3:

          輸入: "(]"
          輸出: false

          示例 4:

          輸入: "([)]"
          輸出: false

          示例 5:

          輸入: "{[]}"
          輸出: true

          題解

          發(fā)現(xiàn)越靠后的左括號,最先匹配,也就是后進(jìn)先出的思想,于是考慮使用棧這個數(shù)據(jù)結(jié)構(gòu)。

          /**
           * @param {string} s
           * @return {boolean}
           */

          var isValid = function(s{
            // 如果是奇數(shù),不可能匹配成功,直接返回false
            if(s.length & 1return false
            let stack = []
            for(let i=0;i<s.length;i++){
              if(s[i] === '(' || s[i] === '{' || s[i] === '[') stack.push(s[i])
              else if(s[i] === ')' && stack[stack.length-1] === '(') stack.pop()
              else if(s[i] === '}' && stack[stack.length-1] === '{') stack.pop()
              else if(s[i] === ']' && stack[stack.length-1] === '[') stack.pop()
              else return false
            }
            return !stack.length
          };

          小獅子初心

          最近收到了很多小伙伴的關(guān)注,在此非常感謝各位的支持。

          大廠面試記錄已經(jīng)更新完畢了,接下來開始更新算法、常見面試題等相關(guān)了,喜歡的小伙伴可以關(guān)注一波,秋招也快開始了,小獅子也創(chuàng)建了一個交流|內(nèi)推群,可以后臺回復(fù) 【交流】拉你進(jìn)群哈~

          希望可以匯聚一些熱愛學(xué)習(xí)的人,可以答疑解惑,摸摸魚都行,有任何問題要勇敢提出來,不要覺得提出問題很 低級 或沒人回答就冷場了,小獅子會來救場~

          另外,可能關(guān)注我的很多都是學(xué)弟學(xué)妹們(大二大三會比較多一點(diǎn)),也許大家在學(xué)前端的時(shí)候會有迷茫,沒有方法或者學(xué)習(xí)路線,甚至對未來都會迷茫,大家一起交流溝通~

          在畢業(yè)季我寫了一份我大學(xué)四年的總結(jié):2021 上半年階段總結(jié),致大學(xué)江湖的青蔥歲月,通過踩坑反思自己,雖然潦潦草草,但也算是略有一點(diǎn)文采,收到許多朋友的支持,希望能夠幫助大家。

          如果出現(xiàn)以上問題都可以找我,我很能理解你們的想法,因?yàn)楫?dāng)時(shí)我也有遇到過,現(xiàn)在希望能幫大家少踩點(diǎn)坑,幫助大家我也會很開心。

          我是一位獅子座的前端博主,希望能在這里給予你一些幫助,歡迎加入小獅子前端~


          瀏覽 47
          點(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>
                  一本大道一区二区三区 | 99国产精品久久久久久久久久久 | 伊人电影AV | の夫婦交換中中文字幕 | av免费在线观看网站 |