C++ 插入排序


 

#include<iostream>
using namespace std;
int main()
{
    //插入排序理解
    int arr[] = { 56, 12, 3, 7, 11,55,456,123,55,44,6,7,8,999,1 }; //定义一个int类型数组 

    int m = 0;
    for (int i = 0; i < sizeof(arr)/sizeof(int); i++)  //定义一个for循环,表示外层需要循环的次数
    {
        for (int j = i ; j > 0; j--)      //定义一个循环,每次将前数组第i个元素内的元素从后向前进行比大小,
        {
            m++;
            if (arr[j] < arr[j - 1])        //如果前一个元素比后一个元素小,则交换元素值,否则直接退出
            {
                int num = arr[j-1];  //值交换
                arr[j-1] = arr[j];   
                arr[j] = num;
            }
            else
                break;     //因为前面的元素都排序好了,如果找到if条件不匹配,则表示需要排序的元素就应该在这个位置,前面的元素不用再比较,直接退出当前循环即可.
        }
    }

    return 0;
}

 


免责声明!

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



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