这玩意儿,效率一般...


本来估摸复杂度为O(nlogn),但似乎用stl后更高?

代码:
//#pragma GCC optimize()//手动Ox优化
#include<bits/stdc++.h>
using namespace std;
const int N=1e5+1;
vector<int>s;
int siz;
int main(){
    int n;
    scanf("%d",&n);
    for(int i=1;i<=n;++i){
        int x;
        scanf("%d",&x);
        int l=0,r=siz-1,ans=-1;
        while(l<=r){
            int mid=(l+r)>>1;
            if(s[mid]<=x){
                ans=mid;
                l=mid+1;
                continue;
            }
            r=mid-1;
        }
        s.insert(s.begin()+ans+1,x);
        siz++;
    }
    for(int i=0;i<siz;++i){
        printf("%d ",s[i]);
    }
    return 0;
}
/**
*  ┏┓   ┏┓+ +
* ┏┛┻━━━┛┻┓ + +
* ┃       ┃
* ┃   ━   ┃ ++ + + +
*  ████━████+
*  ◥██◤ ◥██◤ +
* ┃   ┻   ┃
* ┃       ┃ + +
* ┗━┓   ┏━┛
*   ┃   ┃ + + + +Code is far away from  
*   ┃   ┃ + bug with the animal protecting
*   ┃    ┗━━━┓ 神兽保佑,代码无bug 
*   ┃        ┣┓
*    ┃        ┏┛
*     ┗┓┓┏━┳┓┏┛ + + + +
*    ┃┫┫ ┃┫┫
*    ┗┻┛ ┗┻┛+ + + +
*/

非常简单的实现没有什么好讲的,主要是链表的插入具有易实现的特点,才弄出的