基礎資料結構 堆疊 拓展 括號匹配

2022-08-11 10:21:12 字數 667 閱讀 2025

這是乙個考察對堆疊概念理解的應用,輸入一串帶括號的式子,檢查其中的括號是否前後對應。思路是當遇到括號是入棧,並在下次遇到括號時檢測是否與上乙個入棧的括號匹配為一對,不是則繼續入棧。因為正確的式子最終總能遇到乙個匹配的括號。例如:,可以最先檢測出()這一對小括號,然後出棧,下乙個待匹配括號[與]也可成功匹配。

#include#include

#include

using

namespace

std;

intmain()

switch(str[i-1

])

else

else

}break

;

case']

':if(s.empty())

else

else

}break

;

case'}

':if(s.empty())

else

else

}break

; }

} if((s.empty())&&(error!=1

))

else

}return0;

}

資料結構習題 括號匹配(堆疊)

檢查一段c語言 的小括號 中括號 和大括號是否匹配。在一行中輸入一段c語言 長度不超過1000個字元 行末以換行符結束 第一行輸出左括號的數量和右括號的數量,中間以乙個空格間隔。若括號是匹配的,在第二行列印yes,否則列印no。for int i 0 iadj i j 8 8 yesfor int ...

資料結構 括號匹配

三種括號形式 輸入一段字串,判斷其括號是否匹配。如下 括號匹配問題 include include include define stack init size 100 define stackincrement 10 define error 0 define true 1 define fals...

資料結構 括號匹配

利用棧來實現字串的左右括號匹配 思路 對於字串遍歷 左括號字元入棧 遇到右括號字元就從棧頂彈出原素 彈出和右括號進行匹配 如果匹配成功繼續 匹配不成果報錯 注意 入棧的是字串的位址 不能說會變的臨時變數 接字串時需要用char 型別去接 並且進行強制型別轉換 匹配的時候再用 out表示彈出元素取位址...