题目链接:特殊排序
题目分析:
0.二分
1.题解链接
题解
code:
class Solution {
public:
vector<int> specialSort(int N) {
vector<int> res;
res.push_back(1);
for(int i = 2;i <= N;i++){
int l = 0,r = res.size() - 1;
while(l <= r){
int mid = l + r >> 1;
if(compare(res[mid],i)) l = mid + 1;
else r = mid - 1;
}
res.push_back(i);
for(int j = res.size() - 2;j > r;j--) swap(res[j],res[j + 1]);
}
return res;
}
};
class Solution {
public:
vector<int> specialSort(int N) {
vector<int>v;
for(int i=1;i<=N;++i)v.push_back(i);
stable_sort(v.begin(),v.end(),compare);
return v;
}
};
总结:
1.交互题