排序并删除最后一个容器

时间:2013-05-11 23:51:49

标签: c++ cocos2d-x

有可能经常删除序列中的最后一个,仍然涉及循环排序,所以问题是它与<的速度意义相关。 Kb大小的容器使用向量(而不是其他可用的容器和算法)并按原样使用它:

std::vector<int> elements;
bool single_element = false

while (!single_element)
{
    ApplySomeAlgorithm(elements, params); //weighted, but simple and comparable with looped deleting bellow  
    std::sort (elements.begin(), elements.end(), sort_function); // simple sort on int
    single_element = (int (elements.size()) > 1) ? false : true;

    while (!single_element)
    {
        if !(ApplySomeAlgorithm1(elements.back())) // actually only getter
            break;
        else
            elements.pop_back();
        single_element = (int (elements.size()) > 1) ? false : true;
    }        
}

0 个答案:

没有答案
相关问题