題目**於力扣(leetcode)目錄1370. 上公升下降字串
說明:建立 26 個長度的 int 陣列,用於對映 26 個小寫字母出現的次數遍歷字元陣列 arr(由字串 s 轉換而來),通過雜湊陣列記錄下每個字元出現的次數據題意:當雜湊陣列中次數的和大於 0 時,迴圈進行字元的新增迴圈操作的步驟:
正序遍歷一次,每次遍歷時,往結果集陣列中新增元素,並對雜湊陣列中的次數減 1
倒序遍歷一次,每次遍歷時,往結果集陣列中新增元素,並對雜湊陣列中的次數減 1
當雜湊陣列中的元素都為 0 時,或者記錄字串長度的變數 len 小於等於 0 時,結束迴圈
public static string sortstring(string s)
// 記錄字元陣列 ans 的索引
int j = 0;
// 遍歷字串直到記錄的長度為 0,即 map 中的值均為 0 時
// 即實現不停上公升和下降的排列,直到長度為 0
while (len > 0)
}// 倒序遍歷:下降
for (int i = map.length - 1; i >= 0; i--) }}
// 返回字串結果
1370 上公升下降字串
題目描述 給你乙個字串 s 請你根據下面的演算法重新構造字串 從 s 中選出 最小 的字元,將它 接在 結果字串的後面。從 s 剩餘字元中選出 最小 的字元,且該字元比上乙個新增的字元大,將它 接在 結果字串後面。重複步驟 2 直到你沒法從 s 中選擇字元。從 s 中選出 最大 的字元,將它 接在 ...
1370 上公升下降字串
上公升下降字串 給你乙個字串 s 請你根據下面的演算法重新構造字串 從 s 中選出 最小 的字元,將它 接在 結果字串的後面。從 s 剩餘字元中選出 最小 的字元,且該字元比上乙個新增的字元大,將它 接在 結果字串後面。重複步驟 2 直到你沒法從 s 中選擇字元。從 s 中選出 最大 的字元,將它 ...
1370 上公升下降字串
給你乙個字串s,請你根據下面的演算法重新構造字串 1 從 s 中選出 最小 的字元,將它 接在 結果字串的後面。2 從 s 剩餘字元中選出 最小 的字元,且該字元比上乙個新增的字元大,將它 接在 結果字串後面。3 重複步驟 2 直到你沒法從 s 中選擇字元。4 從 s 中選出 最大 的字元,將它 接...