<h3><a title="题目描述" href="https://leetcode-cn.com/problems/increasing-decreasing-string/">题目描述</a></h3>

<h4>方法一</h4>
<pre class="EnlighterJSRAW" data-enlighter-language="java">class Solution {
public String sortString(String s) {
int[] table = new int[26];
int len = s.length();
// String res = "";
StringBuffer res = new StringBuffer();
for(int i=0;i<len;i++){
table[s.charAt(i) - 'a'] += 1;
}
while(res.length()!=len){
for(int i=0;i<26;i++){
if(table[i]!=0){
res.append((char)(i + 'a'));
table[i] -= 1;
}
}
for(int i=25;i>-1;i--){
if(table[i]!=0){
res.append((char)(i + 'a'));
table[i] -= 1;
}
}
}
return res.toString();
}
}
</pre>
<p> </p>
## 思考
- 比较StringBuffer和String的差别,本题中String 15ms,StringBuffer 3ms,频繁修改的情况下永远优先StringBuffer,而且它是线程安全的。
Leetcode1370 上升下降字符串