Java棧的應(yīng)用之括號匹配算法實(shí)例分析
本文實(shí)例講述了Java棧的應(yīng)用之括號匹配算法。分享給大家供大家參考,具體如下:
1、LeetCode官網(wǎng) 美網(wǎng):https://leetcode.com/ 中文網(wǎng) :https://leetcode-cn.com/英語不咋地,所以選擇此處選擇中文網(wǎng)來進(jìn)行測試。
2、LeetCode中獲取第20號題目(1)搜索20號題目
(2)查看題目
(3)根據(jù)題目要求,首先在本地編輯器中完善20號題目的代碼--使用java提供的Stack類,代碼如下:
class Solution { public boolean isValid(String s) { Stack<Character> stack=new Stack<Character>(); for (int i=0;i<s.length();i++){ char c=s.charAt(i); if(c==’(’||c==’[’||c==’{’){stack.push(c); }else {if(stack.isEmpty()) return false;char topChar=stack.pop();if(c==’)’&&topChar!=’(’) return false;if (c==’]’&&topChar!=’[’) return false;if(c==’}’&&topChar!=’{’) return false; } } return stack.isEmpty(); }}
(4)將代碼提交到LeetCode代碼驗(yàn)證是否通過
這樣就完成了括號匹配的相關(guān)要求,而且是通過Leetcode來完成的,我感覺太酷了~
下一節(jié)我們將繼續(xù)學(xué)習(xí)一個(gè)關(guān)于Leetcode的知識。
更多關(guān)于java算法相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點(diǎn)技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》
希望本文所述對大家java程序設(shè)計(jì)有所幫助。
相關(guān)文章:
1. Ajax實(shí)現(xiàn)表格中信息不刷新頁面進(jìn)行更新數(shù)據(jù)2. 詳解CSS偽元素的妙用單標(biāo)簽之美3. python 實(shí)用工具狀態(tài)機(jī)transitions4. PHP 面向?qū)ο蟪绦蛟O(shè)計(jì)之類屬性與類常量實(shí)現(xiàn)方法分析5. UDDI FAQs6. msxml3.dll 錯(cuò)誤 800c0019 系統(tǒng)錯(cuò)誤:-2146697191解決方法7. HTML <!DOCTYPE> 標(biāo)簽8. Java Spring WEB應(yīng)用實(shí)例化如何實(shí)現(xiàn)9. CSS自定義滾動(dòng)條樣式案例詳解10. 將properties文件的配置設(shè)置為整個(gè)Web應(yīng)用的全局變量實(shí)現(xiàn)方法
