码迷,mamicode.com
首页 > 编程语言 > 详细

selection sort 选择排序

时间:2015-07-06 21:29:15      阅读:114      评论:0      收藏:0      [点我收藏+]

标签:

template<typename T>
void SelectSort(list<T>& container)
{
    std::list<T>::iterator it_min = container.begin();//待放入最小值的位
    std::list<T>::iterator it_temp = it_min;//暂存最小值
    std::list<T>::iterator it_test = it_min;//滑动指针
    it_test++;
    do
    {    
        while (it_test!=container.end())
        {
            if (*it_temp > *it_test)
            {
                it_temp = it_test;
            }
            it_test++;
        }
        swap(*it_temp, *it_min);
        it_min++;
        //将test位放在min位后1位
        it_test = it_min;
        it_test++;
        //默认min为最小位
        it_temp = it_min;
    } while (it_test != container.end());
}



selection sort 选择排序

标签:

原文地址:http://www.cnblogs.com/ssy-zju/p/4625210.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!