原题链接
思路一:
抓住题目要求:
a
n
s
[
i
]
=
n
u
m
s
[
n
u
m
s
[
i
]
ans[i] = nums[nums[i]
ans[i]=nums[nums[i]
循环:令
i
i
i 从 0 循环到
n
u
m
s
.
s
i
z
e
(
)
−
1
nums.size()-1
nums.size()−1 ;即可,每次循环都执行赋值操作:
a
n
s
[
i
]
=
n
u
m
s
[
n
u
m
s
[
i
]
;
ans[i] = nums[nums[i];
ans[i]=nums[nums[i];
代码一:
class Solution {
public:
vector<int> buildArray(vector<int>& nums) {
vector<int> ans;
int n = nums.size();
for (int i=0; i < n; i ++) {
ans.push_back(nums[nums[i]]);
}
return ans;
}
};