Algorithm Intro - Count Sort

来源:互联网 发布:淘宝客教学视频 编辑:程序博客网 时间:2024/05/29 16:28




void count_sort(vector<int> &v, vector<int>&res)
{
    int t = 0;
    vector<int> r, c;

    r.assign(4096, 0);
    for(int i = 0; i < r.size(); i++) r[i] = 0;
    c = r;
    res = r;

    for(int i = 0; i < v.size(); i++) {
        r[v[i]]++;
        c[v[i]]++;
    }

    for(int i = 1; i < c.size(); i++) {
        c[i] += c[i - 1];
    }

    
    for(int i = v.size() - 1; i >= 0; i--) {
        res[c[v[i]] - 1] = v[i];
        c[v[i]]--;
        // or res[--c[v[i]]] = v[i];
    }


0 0
原创粉丝点击