Count and Say
問題簡介:輸入指定整數n,輸出對應n的字符串序列
注:
1.第n個序列是對第n - 1個序列結果數字的個數求和
2.第一個序列即n = 1結果為"1"
舉例:
1.
輸入:1
輸出:“1”
2.
輸入:2
輸出:“11”
解釋:看n-1即2-1結果為1的序列,解釋為1個1即11
3.
輸入:3
輸出:“21”
解釋:看n-1即3-1結果為2的序列,解釋為2個1即21
4.
輸入:4
輸出:“1211”
解釋:看n-1即4-1結果為3的序列,解釋為1個2和1個1即1211
5.
輸入:5
輸出:“111221”
解釋:看n-1即5-1結果為4的序列,解釋為1個1和1個2和2個1即111221
解法一:利用遞歸的思想找到當前n對應的第n - 1的結果字符串,對其遍歷,對其中的元素進行計數即相同加一不同就拼接到結果字符串中,利用StringBuffer效率更高一些
注:
1.StringBuffer是可變而String是不可變的StringBuffer對應的拼接方法是append()
2.StringBuffer轉換為String可使用toString()方法
小白刷題之路,請多指教— — 要麼大器晚成,要麼石沉大海