給定乙個只包括'('
,')'
,''
,'['
,']'
的字串,判斷字串是否有效。
有效字串需滿足:
左括號必須用相同型別的右括號閉合。
左括號必須以正確的順序閉合。
注意空字串可被認為是有效字串。
示例 1:
輸入:"()"輸出:true示例 2:
輸入:"(){}"輸出:true示例 3:
輸入:"(]"輸出:false示例 4:
輸入:"([)]"輸出:false示例 5:
輸入:""輸出:true解題思路,將左邊括號全部放入棧,當遇到右邊的括號,與棧的頂層元素進行匹配。
public boolean isvalid(string s)
stackstack=new stack();
boolean res=false;
string temp=null;
for(int i=0;ires=matching(stack.pop(),temp);
if(!res)
}else
}//匹配完成後,stack應該是空的,不為空則表示有錯誤。
if(stack.isempty())
return false;
}public static boolean matching(string left, string right) else if(left.matches("\\")) else if(left.matches("\\[")&&right.matches("\\]")) else if(left.matches("\"")&&right.matches("\""))
return false;
}
學習記錄4
8.15 8.17 要解析sql查詢語句,首先要熟悉sql查詢語句。對於需求1 解析sql查詢語句中需要查詢出的列名。要查詢的列名肯定位於select和from之間,由於sql查詢語句的情況比較多,首先使用正規表示式 select s from s 得到列名部分,再進行各種情況處理。但是後面發現sp...
LeetCode 4 有效完全平方數
給定乙個正整數 num,編寫乙個函式,如果 num 是乙個完全平方數,則返回 true,否則返回 false。說明 不要使用任何內建的庫函式,如 sqrt。示例 1 輸入 16 輸出 true 示例 2 輸入 14 輸出 false 兩個思路 1.從0 num 2 1,存在乙個數的平方為num即為完...
ibatis學習記錄 4
今天主要的研究是關於ibatis的dao。dao全名是data access object,有它的存在解決了資料庫使用中的乙個問題,就是如何面對不同的資料庫資源進行相同的處理。在dao下,規定了資料庫操作的介面,於是面對不同的資料庫資源,只需要分別實現相關介面就可以。提供介面api給使用者能是使用者...