千家信息网

什么是冒泡排序算法代码

发表于:2024-10-02 作者:千家信息网编辑
千家信息网最后更新 2024年10月02日,什么是冒泡排序算法代码?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。冒泡排序,是一种计算机科学领域的较简单的排序算法,它重复地走访过要排
千家信息网最后更新 2024年10月02日什么是冒泡排序算法代码

什么是冒泡排序算法代码?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

冒泡排序,是一种计算机科学领域的较简单的排序算法,它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序【如从大到小、首字母从Z到A】错误就把他们交换过来。

void vBubbleSort(int arr[], int len){    int i, j, temp;    for (j = 0; j < len - 1; j++){            //每次最大元素就像气泡一样"浮"到数组的最后        for (i = 0; i < len - 1 - j; i++){    //依次比较相邻的两个元素,使较大的那个向后移            if(arr[i] > arr[i + 1]){            //交换两个数                temp = arr[i];                arr[i] = arr[i + 1];                arr[i + 1] = temp;            }        }    }}void vBubbleSortChange(int arr[], int len){    int i,j,temp;    int swapped = 1;    for (j = 0; swapped; j++){            //每次最大元素就像气泡一样"浮"到数组的最后        swapped = 0;        for (i = 0; i < len - 1 - j; i++){    //依次比较相邻的两个元素,使较大的那个向后移            if(arr[i] > arr[i + 1]){            //交换两个数                temp = arr[i];                arr[i] = arr[i + 1];                arr[i + 1] = temp;                swapped = 1;            }        }//        if(    swapped == 0) {j = len-1;}//如果没有元素交换,说明序列是顺序的,退出循环    }}void vCockTailSort(int arr[],int len){    int tmp,i,left=0,right = len-1;    while(left < right){        for(i=left;iarr[i+1]){                tmp = arr[i];                arr[i] = arr[i+1];                arr[i+1] = tmp;            }        }        right--;        for(i=right;i>left;i--){//反向冒泡,确定最小值            if(arr[i]arr[i+1]){                tmp = arr[i];                arr[i] = arr[i+1];                arr[i+1] = tmp;                swapped = 1;                bound = i;            }        }        right=bound;//缩小遍历边界        for(i=right;i>left;i--){//反向冒泡,确定最小值            if(arr[i]

看完上述内容,你们掌握什么是冒泡排序算法代码的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

0