二分排序


#include<iostream>
#include<vector>
#include<algorithm>

using namespace std;
void main()
{
    vector<unsigned> scores(0);
    for (decltype(scores.size()) ix = 0; ix < scores.size(); ++ix) {
        scores.push_back(ix);
    }
    sort(scores.begin(), scores.end());

    auto beg = scores.begin(), end = scores.end();
    auto mid = scores.begin() + scores.size() / 2;
    int a = 4;
    while (mid != end && *mid != a)
    {
        if (a < *mid)
            end = mid;
        else
            beg = mid + 1;
        mid = beg + (end - beg) / 2;
    }

    system("pause");
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM