乙個合法的括號匹配序列有以下定義:
1、空串""是乙個合法的括號匹配序列
2、如果"x"和"y"都是合法的括號匹配序列,"xy"也是乙個合法的括號匹配序列
3、如果"x"是乙個合法的括號匹配序列,那麼"(x)"也是乙個合法的括號匹配序列
4、每個合法的括號序列都可以由以上規則生成。
例如: "","()","()()","((()))"都是合法的括號序列
對於乙個合法的括號序列我們又有以下定義它的深度:
1、空串""的深度是0
2、如果字串"x"的深度是x,字串"y"的深度是y,那麼字串"xy"的深度為max(x,y) 3、如果"x"的深度是x,那麼字串"(x)"的深度是x+1
例如: "()()()"的深度是1,"((()))"的深度是3。牛牛現在給你乙個合法的括號序列,需要你計算出其深度。
輸入描述:
輸入包括乙個合法的括號序列s,s長度length(2 ≤ length ≤ 50),序列中只包含'('和')'。輸出描述:
輸出乙個正整數,即這個序列的深度。示例1
(())
2這道題目比較簡單, 直接用括號序列的特點解決
#include #include #include using namespace std;
int main()
else depth--;
}cout << maxdepth << endl;
return 0;
}
演算法 愛奇藝春招筆試題
一共兩題還是比較簡單的 題目有a,b,c三個數和如下兩個操作 1.任意兩個數 1,2.乙個數 2,假設經過有限步操作一定能使得3個數相等,問最少的操作次數 思路排序後較小的兩個數轉為最大的數其實不管用1還是2方法步數一樣,比如3,3,5使用兩次1還是使用2次2都是得到最終結果,所以只要以最小的次數將...
2021屆秋招 愛奇藝筆試 匹配括號
題目描述 輸入字串只包括 檢查是否正確匹配 思路 簡單題,棧頂匹配就完事了 public class num3 hashmapkuomap new hashmap kuomap.put smallright,smallleft kuomap.put middleright,middleleft ku...
愛奇藝校招筆試題 缺失的括號
乙個完整的括號字串定義規則如下 1 空字串是完整的。2 如果s是完整的字串,那麼 s 也是完整的。3 如果s和t是完整的字串,將它們連線起來形成的st也是完整的。例如,和 是完整的括號字串,和 是不完整的括號字串。牛牛有乙個括號字串s,現在需要在其中任意位置盡量少地新增括號,將其轉化為乙個完整的括號...