常用排序算法-簡單選擇排序

1. 簡單排序簡介

        如果提到最簡單的排序,一般我是會想到冒泡排序的,之所以不會想到簡單排序,是因爲簡單排序實在——太簡單了,簡單到讓人不相信這個算法有實際用處。簡單排序的原理非常簡單,就是簡單的每次找到待排序數組中最小的,然後把它挑出來,最後不就搞完了嘛。

        這一段話說了好多“簡單”啊~

2. 簡單排序基本流程

簡單排序的實現流程跟原理是一樣簡單的

    1. 選擇第1個數作爲初始最小數,將此數與後面的數進行比較,比較完之後找到這次比較的數中最小的,與第1個數進行交換;

    2. 選取第i個數作爲初始最小數,重複過程1;

    3. 最後兩個數比較完即可結束

3. 簡單排序的實現

template <class T>
void mySeqList<T>::SimpleSort()
{
    int tempMin;
    int indexMin;
    //cout<<length;
    for (int i=0; i<length-1; ++i)
    {
        indexMin = i;
        tempMin = seqList[i];
        for (int j=i+1; j<length; ++j)
        {
            if (tempMin>seqList[j])
            {
                tempMin = seqList[j];
                indexMin = j;
            }
        }
        int temp = seqList[i];
        seqList[i] = seqList[indexMin];
        seqList[indexMin] = temp;
    }

}

4. 注意的問題

    不要忽視簡單問題

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章