排序算法-冒泡法(起泡法)

简介: 排序算法-冒泡法(起泡法)


#include<stdio.h>
int main()
{
  int a[3];
  int i, j, t;
  for (i = 0; i < 3; i++)
    scanf("%d", &a[i]);
  for(j=0;j<2;j++)
    for(i=0;i<2-j;i++)
      if (a[i] > a[i + 1])
      {
        t = a[i];
        a[i] = a[i + 1];
        a[i + 1] = t;
      }
  for (i =0; i<3; i++)
    printf("%d\t", a[i]);
  return 0;
}


原理如下:

显而易知,共有六个数,在第一趟排序时,需要进行5次两两比较;在第二趟,则需进行4次比较;以此类推,在最后一趟时(第五趟),只需比较1次。因此,得出结论:若有n个数,则要进行n-1趟比较,在第一趟要进行n-1两两比较,在第j趟则要进行n-j次比较。



相关文章
|
1月前
|
算法 搜索推荐 JavaScript
NodeJ实现冒泡算法
NodeJ实现冒泡算法
16 0
|
1月前
|
算法 搜索推荐 Java
Java实现冒泡算法
Java实现冒泡算法
11 0
|
30天前
|
存储 算法 搜索推荐
【算法】七大经典排序(插入,选择,冒泡,希尔,堆,快速,归并)(含可视化算法动图,清晰易懂,零基础入门)
【算法】七大经典排序(插入,选择,冒泡,希尔,堆,快速,归并)(含可视化算法动图,清晰易懂,零基础入门)
|
5月前
|
搜索推荐 Java
排序算法-冒泡、选择、堆、插入、归并、快速、希尔
排序算法-冒泡、选择、堆、插入、归并、快速、希尔
14 0
|
2月前
|
算法 C语言
C语言数组实例(冒泡算法、猜数字)
C语言数组实例(冒泡算法、猜数字)
17 0
|
3月前
|
搜索推荐
排序算法之快排,希尔和冒泡
排序算法之快排,希尔和冒泡
|
8月前
|
算法 JavaScript 搜索推荐
[JavaScript] 常用算法介绍「冒泡算法」
JS中的冒泡排序算法(Bubble Sort)是一种简单而常用的排序算法。它通过多次迭代比较相邻的元素,并根据需要交换它们的位置,使得每一轮迭代都能找到当前数据集中的最大(或最小)值,并将其移至合适的位置。
|
8月前
|
存储 算法 搜索推荐
数据结构各内部排序算法总结对比及动图演示(插入排序、冒泡和快速排序、选择排序、堆排序、归并排序和基数排序等)2
数据结构各内部排序算法总结对比及动图演示(插入排序、冒泡和快速排序、选择排序、堆排序、归并排序和基数排序等)2
168 0
|
5月前
|
搜索推荐
深入探究常用排序算法:冒泡、插入、选择与快速排序
深入探究常用排序算法:冒泡、插入、选择与快速排序
|
8月前
|
算法 C语言
【冒泡排序】冒泡算法-----数字排序
【冒泡排序】冒泡算法-----数字排序
33 0