关于算法:桶排序LeetCode1528

1次阅读

共计 541 个字符,预计需要花费 2 分钟才能阅读完成。

题目:

给你一个字符串 s 和一个 长度雷同 的整数数组 indices。
请你重新排列字符串 s,其中第 i 个字符须要挪动到 indices[i] 批示的地位。返回重新排列后的字符串。
示例 1:
输出:s = “codeleet”, indices = [4,5,6,7,0,2,1,3]
输入:”leetcode”
解释:如图所示,”codeleet” 重新排列后变为 “leetcode”。

束缚:

s.length == indices.length == n
1 <= n <= 100
s 仅蕴含小写英文字母。
0 <= indices[i] < n
indices 的所有的值都是惟一的(也就是说,indices 是整数 0 到 n – 1 造成的一组排列)

崩溃思路:

1. 从 indices 给出的值的范畴第一反馈就是桶排序,依据 indices 的数值特点,桶的大小应用 indices 的数组大小即可
2. 应用 StringBuilder 进行新的字符串的构建,效率更高

波及的办法:

1、String.charAt(index);
2、StringBuilder sb
   sb.append(char);
   sb.toString();
   
   

vscode 链接

   https://github.com/lunaDolphin/leetcode/tree/master/1528_restoreString


正文完
 0