有效的括號

https://leetcode-cn.com/problems/valid-parentheses/description/

題目描述

給定一個只包括 '(',')'驼修,'{','}'诈铛,'['乙各,']' 的字符串,判斷字符串是否有效幢竹。
有效字符串需滿足:
左括號必須用相同類型的右括號閉合耳峦。
左括號必須以正確的順序閉合。
注意空字符串可被認為是有效字符串焕毫。

示例

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

思路

1.將括號量化為數(shù)字蹲坷;
2.如果是左括號,則放進棧中邑飒,如果是右括號則與棧頂元素比較是否匹配循签,匹配則棧頂元素出棧;
3.考慮特殊情況:

  • 輸入為空字符串
  • 輸入的字符串只包含一個右括號
  • 當棧為空疙咸,當前是右括號懦底,會溢出

代碼

class Solution {
    public boolean isValid(String s) {
         if (s.length()==0) {
            return true;
        }
        HashMap<Character, Integer> map = new HashMap<Character, Integer>();
        map.put('(', 1);
        map.put(')', -1);
        map.put('{', 2);
        map.put('}', -2);
        map.put('[', 3);
        map.put(']', -3);
        LinkedList<Integer> linkedList = new LinkedList<Integer>();
        for (int i = 0; i < s.length(); i++) {
            if (map.get(s.charAt(i)) < 0 && linkedList.size()==0) {
                return false;
            }
            if (map.get(s.charAt(i)) > 0) {
                linkedList.add(map.get(s.charAt(i)));
            } else {
                if (linkedList.get(linkedList.size() - 1) + map.get(s.charAt(i)) == 0) {
                    linkedList.remove(linkedList.size() - 1);

                } else {
                    return false;
                }
            }
        }
        return linkedList.size()==0;
    }
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市罕扎,隨后出現(xiàn)的幾起案子聚唐,更是在濱河造成了極大的恐慌,老刑警劉巖腔召,帶你破解...
    沈念sama閱讀 217,734評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件杆查,死亡現(xiàn)場離奇詭異,居然都是意外死亡臀蛛,警方通過查閱死者的電腦和手機亲桦,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評論 3 394
  • 文/潘曉璐 我一進店門崖蜜,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人客峭,你說我怎么就攤上這事豫领。” “怎么了舔琅?”我有些...
    開封第一講書人閱讀 164,133評論 0 354
  • 文/不壞的土叔 我叫張陵等恐,是天一觀的道長。 經(jīng)常有香客問我备蚓,道長课蔬,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,532評論 1 293
  • 正文 為了忘掉前任郊尝,我火速辦了婚禮二跋,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘流昏。我一直安慰自己扎即,他們只是感情好,可當我...
    茶點故事閱讀 67,585評論 6 392
  • 文/花漫 我一把揭開白布况凉。 她就那樣靜靜地躺著谚鄙,像睡著了一般。 火紅的嫁衣襯著肌膚如雪茎刚。 梳的紋絲不亂的頭發(fā)上襟锐,一...
    開封第一講書人閱讀 51,462評論 1 302
  • 那天,我揣著相機與錄音膛锭,去河邊找鬼粮坞。 笑死,一個胖子當著我的面吹牛初狰,可吹牛的內(nèi)容都是我干的莫杈。 我是一名探鬼主播,決...
    沈念sama閱讀 40,262評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼奢入,長吁一口氣:“原來是場噩夢啊……” “哼筝闹!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起腥光,我...
    開封第一講書人閱讀 39,153評論 0 276
  • 序言:老撾萬榮一對情侶失蹤关顷,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后武福,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體议双,經(jīng)...
    沈念sama閱讀 45,587評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,792評論 3 336
  • 正文 我和宋清朗相戀三年捉片,在試婚紗的時候發(fā)現(xiàn)自己被綠了平痰。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片汞舱。...
    茶點故事閱讀 39,919評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖宗雇,靈堂內(nèi)的尸體忽然破棺而出昂芜,到底是詐尸還是另有隱情,我是刑警寧澤赔蒲,帶...
    沈念sama閱讀 35,635評論 5 345
  • 正文 年R本政府宣布泌神,位于F島的核電站,受9級特大地震影響嘹履,放射性物質(zhì)發(fā)生泄漏腻扇。R本人自食惡果不足惜债热,卻給世界環(huán)境...
    茶點故事閱讀 41,237評論 3 329
  • 文/蒙蒙 一砾嫉、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧窒篱,春花似錦焕刮、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至高镐,卻和暖如春溉旋,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背嫉髓。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評論 1 269
  • 我被黑心中介騙來泰國打工观腊, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人算行。 一個月前我還...
    沈念sama閱讀 48,048評論 3 370
  • 正文 我出身青樓梧油,卻偏偏與公主長得像,于是被迫代替她去往敵國和親州邢。 傳聞我的和親對象是個殘疾皇子儡陨,可洞房花燭夜當晚...
    茶點故事閱讀 44,864評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 官網(wǎng) 中文版本 好的網(wǎng)站 Content-type: text/htmlBASH Section: User ...
    不排版閱讀 4,381評論 0 5
  • 前言 最先接觸編程的知識是在大學里面骗村,大學里面學了一些基礎(chǔ)的知識,c語言呀枢,java語言胚股,單片機的匯編語言等;大學畢...
    oceanfive閱讀 3,078評論 0 7
  • 第2章 基本語法 2.1 概述 基本句法和變量 語句 JavaScript程序的執(zhí)行單位為行(line)硫狞,也就是一...
    悟名先生閱讀 4,149評論 0 13
  • 兩年信轿,半個大學過去了晃痴,遇見了更好的自己,繼續(xù)努力财忽,做一值得被愛的人倘核。
    如喪青春li閱讀 90評論 0 0
  • 它是綠葉蔬菜第一名,秋季吃它即彪,養(yǎng)陽驅(qū)寒紧唱,還是胃病克星! 茴香隶校,是常用的調(diào)料漏益,是燒魚燉肉、制作鹵制食品時的必用之品深胳。...
    黃耀毅閱讀 380評論 0 0