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