Algs4 1 3 4用Stack檢查括號是否配對

2022-08-09 15:03:26 字數 644 閱讀 7008

1.3.4編寫現代乙個stack的用例parentheses,從標準輸入中讀取乙個文字流並使用棧判定其中的括號是否配對完整。

例如,對於[()]{}程式應該列印true,對於[(])則列印false。

答:上一次發布的code沒有考慮棧為空時讀入右括號的情形。

演算法如下:

置結果為true

不斷的讀入資料,直到讀入空或結果為false時結束讀入

1)讀入左括時入棧

2)讀入右括號時

2.1)如果棧為空結置置為false

2.2)如果棧有內容,彈出一次,彈出的值如果是與右括號不同型別的左括號,置結果為false

結束讀入資料

3)棧為空並且結果為ture,那麼為結果為true,其他情況下結果為false.

public  class parentheses

"))

if(s.isempty())

result=false;

else

result=s.pop().equals("//end while

result=result && s.isempty();

stdout.println(result);

}//end main

}//end class   

413 反轉整數

原題 您在真實的面試中是否遇到過這個題?是 給定x 123,返回 321 標籤 整數思路 按位依次取出數字存入陣列,再將數字取出乘以對應的權值完成反轉。注意反轉過程中隨時判斷數值是否超出int型範圍,超出範圍則返回0。參考 c int型負數除法取餘問題 ac class solution int s...

4 1 3 資料成員

資料成員用來說明物件特有的一些屬性,如人的身份證號 姓名 年齡 性別 身高 學歷,汽車的品牌 顏色 最高時速,蛋糕的名稱 尺寸 配料,書的名字 作者 isbn 出版社 出版日期,等等。資料成員大致可以分為兩類 屬於物件的資料成員和屬於類的資料成員。屬於物件的資料成員主要指在建構函式 init 中定義...

4 13 學習筆記

1.整數拆分為2 的冪的和 用陣列a 直接記錄結果。從前往後推的時候,有兩種可能性,分為a 2m 1 和a 2m 易知a 2m 1 a 2m 對於a 2m 它的所有拆分方式分為兩大類 1 含有1的,這部分所有方式都去掉1,就得到a 2m 1 2 不含有1的,也就是分出的都是2的倍數,那麼都除以2,就...