冒泡排序

案例二:冒泡排序

作用:最常用的排序算法,对数组内元素进行排序

思路:1.比较相邻元素。如果第一个比第二个大,交换;

           2.对每一对相邻元素同样操作,执行完成,找到最大值;

           3.重复以上步骤,每次比较次数-1,直至不需要比较。

示例:将数组{1,6,3,7,8,2,0,5,4,9} 进行升序排序

//利用指针 冒泡排序
void bubbleSort(int& arr,const int& len)
{
    for(int i=0; i<len-1; i++)
    {
        for(int j=0; j<len-1-i; j++)
        {
            //如果第一个数比第二个数大,交换数字
            if(arr[j] > arr [j+1])
            {
                int tmp = arr[j];
                arr[j] = arr[j+1];
                arr[j+1] = tmp;
            }
        }
    }  
}

//打印数组
void printArr(const int& arr,const int& len)
{
    for(int i=0; i<len; i++)
         cout << arr[i] << " ";
    cout << endl;
}

int main()
{
    int arr[] = {1,6,3,7,8,2,0,5,4,9};
    //求数组总个数
    int len = sizeof(arr)/sizeof(arr[0]);
    
    cout << "排序前:" << endl;
    printArr(arr,len);

    //(冒泡排序)
    bubbleSort(arr,len);

    cout << "排序后:" << endl;
    printArr(arr,len);
  
    system("pause");
    return 0;
}

 

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页