int getMinSwap(vector<int> &nums)
{
map<int,int>mp;
vector<int>sort_nums(nums);
sort(sort_nums.begin(),sort_nums.end());
for (int i = 0; i <sort_nums.size(); i++)mp[sort_nums[i]] = i ;//记录下标索引
int cnt = 0;
for (int i = 0; i < nums.size();i++){
while (nums[i] !=sort_nums[i]){
swap(nums[i],nums[mp[nums[i]]]);// 将元素放到它该在的位置
cnt++;
}
}
return cnt;
}