Chri_K

二分函数

二分降序(找第一个小于或小于等于的数)

    int n=5;//5个元素
    a[0]=9,a[1]=7,a[2]=5,a[3]=3,a[4]=1;//降序
    cout<<lower_bound(a,a+n,5,greater<int>())-a<<endl;//得到的是下标 2
    cout<<upper_bound(a,a+n,5,greater<int>())-a<<endl;//得到的是下标 3

二分升序(找第一个大于或大于等于的数)

    int n=5;//5个元素
    a[0]=1,a[1]=3,a[2]=5,a[3]=7,a[4]=9;//升序
    cout<<lower_bound(a,a+n,5)-a<<endl;//得到的是下标 2
    cout<<upper_bound(a,a+n,5)-a<<endl;//得到的是下标 3

 

posted on 2020-10-29 15:07  Chri_K  阅读(26)  评论(0)    收藏  举报