冒泡排序代码(python冒泡排序代码)

本篇文章给大家谈谈冒泡排序代码,以及python冒泡排序代码对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java冒泡排序法代码

冒泡排序是比较经典的排序算法。代码如下:

for(int i=1;iarr.length;i++){

for(int j=1;jarr.length-i;j++){

//交换位置

}    

拓展资料:

原理:比较两个相邻的元素,将值大的元素交换至右端。

思路:依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个数,将并雹卜小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后肆薯两个数,将小数放前,大数放后。重复第一趟步骤,直至全部排序完成。

第一趟比较完成后,最后一个数一定是数组中最大的一个数,所以第二趟比较的时候最后一个数不参与比较;

第二趟比较完成后,倒数第二个数也一定是数组中第二大的数,所以第三趟比较的时候最后两个数不绝穗参与比较;

依次类推,每一趟比较次数-1;

……

举例说明:要排序数组:int[] arr={6,3,8,2,9,1}; 

for(int i=1;iarr.length;i++){

for(int j=1;jarr.length-i;j++){

//交换位置

}    

参考资料:冒泡排序原理

C语言冒泡排序法代码

冒泡排序每一趟排序把最大的放在最右边。

比如:

87 12 56 45 78

87和12交换:12 87 56 45 78

87和56交换:   56 87 45 78

87和45交换:      45 87 78

87和78交换:         78 87

到此第一趟排序结束,接下来哗慎的世虚每一趟排序都是这样。

#includestdio.h

void Print(int *num, int n)

{

    int i;

    for(i = 0; i  n; i++)

        printf("%d ", num[i]);

    puts("\n");

    return;

}

void Bubble_Sort(int *num, int n)

{

    int i, j;

    for(i = 0; i  n; i++)

    {

  乱返敬      for(j = 0; i + j  n - 1; j++)

        {

            if(num[j]  num[j + 1])

            {

                int temp = num[j];

                num[j] = num[j + 1];

                num[j + 1] = temp;

            }

            Print(num, n);

        }

    }

    return;

}

int main()

{

    int num[8] = {87, 12, 56, 45, 78};

    Bubble_Sort(num, 5);

    return 0;

}

为一个冒泡排序程序设计测试用例。并测试之(C语言编程)

以下是一个冒晌搏山泡排序程序的示例代码,它可以对输入的任意数量整数进行排序:

```c

#include stdio.h

void bubble_sort(int list[], int n) {

int i, j, temp;

for(i = 0; i n-1; i++) {

for(j = 0; j n-i-1; j++) {

if(list[j] list[j+1]) {

temp = list[j];

list[j] = list[j+1];

list[j+1] = temp;

}

}

}

}

int main() {

int n, i;

printf("请输入要排序的整数个数:");

scanf("%d", n);

int list[n];

printf("请输入%d个整数:", n);

for(i = 0; i 银液 n; i++) {

scanf("%d", list[i]);

}

bubble_sort(list, n);

printf("排宴中序后的结果是:");

for(i = 0; i n; i++) {

printf("%d ", list[i]);

}

return 0;

}

```

接下来是测试用例,包括了多种情况,以验证算法在各种情况下的正常工作:

```c

#include stdio.h

int main() {

// 测试用例1:对3个整数进行排序

int list1[] = {2, 1, 3};

bubble_sort(list1, 3);

printf("测试用例1:[2, 1, 3] - [1, 2, 3]

");

for(int i = 0; i 3; i++) {

printf("%d ", list1[i]);

}

printf("

");

// 测试用例2:对10个整数进行排序

int list2[] = {56, 89, 17, 21, 2, 76, 12, 9, 47, 62};

bubble_sort(list2, 10);

printf("测试用例2:[56, 89, 17, 21, 2, 76, 12, 9, 47, 62] - [2, 9, 12, 17, 21, 47, 56, 62, 76, 89]

");

for(int i = 0; i 10; i++) {

printf("%d ", list2[i]);

}

printf("

");

// 测试用例3:对1个整数进行排序

int list3[] = {5};

bubble_sort(list3, 1);

printf("测试用例3:[5] - [5]

");

for(int i = 0; i 1; i++) {

printf("%d ", list3[i]);

}

printf("

");

return 0;

}

```

测试结果显示,算法可以正常地对数组进行排序。

[img]

关于冒泡排序代码和python冒泡排序代码的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

标签列表