-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path1528_javascript.js
65 lines (48 loc) · 1.5 KB
/
1528_javascript.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
// 给你一个字符串 s 和一个 长度相同 的整数数组 indices 。
// 请你重新排列字符串 s ,其中第 i 个字符需要移动到 indices[i] 指示的位置。
// 返回重新排列后的字符串。
//
// 示例 1:
// 输入:s = "codeleet", indices = [4,5,6,7,0,2,1,3]
// 输出:"leetcode"
// 解释:如图所示,"codeleet" 重新排列后变为 "leetcode" 。
// 示例 2:
// 输入:s = "abc", indices = [0,1,2]
// 输出:"abc"
// 解释:重新排列后,每个字符都还留在原来的位置上。
// 示例 3:
// 输入:s = "aiohn", indices = [3,1,4,2,0]
// 输出:"nihao"
// 示例 4:
// 输入:s = "aaiougrt", indices = [4,0,2,6,7,3,1,5]
// 输出:"arigatou"
// 示例 5:
// 输入:s = "art", indices = [1,0,2]
// 输出:"rat"
//
// 提示:
// s.length == indices.length == n
// 1 <= n <= 100
// s 仅包含小写英文字母。
// 0 <= indices[i] < n
// indices 的所有的值都是唯一的(也就是说,indices 是整数 0 到 n - 1 形成的一组排列)。
// 双重循环
var restoreString = function(s, indices) {
let newArr=[]
for(let i=0; i<indices.length; i++){
for(let j=0; j<indices.length; j++){
if(indices[j] == i){
newArr.push(s[j])
}
}
}
return newArr.join('')
};
// 优化
var restoreString = function(s, indices) {
let newArr=[]
for(let i=0; i<indices.length; i++){
newArr[indices[i]] = s[i];
}
return newArr.join('')
};