C语言排序 C语言冒泡排序算法(Bubble Sort)

操作方法

  • 01

    冒泡排序原理: 设要排序的数据记录到一个数组中,把关键字较小的看成“较轻”的气泡,所以就应该上浮。从底部(数组下标较大的一端)开始,反复的从下向上扫描数组。进行每一遍扫描时,依次比较“相邻”的两个数据,如果“较轻”的气泡在下面,就要进行交换,把它们颠倒过来。(图片取自互联网)

  • 02

    具体实现过程:第一步 输入数据 你可以直接将你所需要的数据存入数组,如int a[5] = {84,83,88,87,61}; 也可以通过循环输入 for(i = 0 ; i< n ;i++) { scanf("%d",&a[i]); } 来实现数据输入数组;

  • 03

    具体实现过程:第二步 写循环 冒泡排序是从最低部扫描(数组下标大的一端);所以内部循环应该从数组下标较大的一方开始 for(j = n - 1 ; j > i ; j--) 内部循环确定以后,写外部循环; for(i = 0; i < n ; i++) for(j = n - 1 ; j > i ; j--) // j>i的是扫描第一遍以后,下标最小的一位数,已经变成最大的一位数

  • 04

    具体实现过程:第二步 写交换 if(a[j - 1] < a[j]) { temp = a[j - 1]; a[j - 1]=a[j]; a[j]=temp; }

  • 05

    C语言实现: #include <stdio.h> int main() { int a[5] = {84,83,88,87,61}; int i,j; int temp; printf("按从大到小排序!\n"); int n = 5 ;//数组最大的下标 for(i = 0; i < n ; i++) for(j = n - 1 ; j > i ; j--) { if(a[j - 1] < a[j]) { temp = a[j - 1]; a[j - 1]=a[j]; a[j]=temp; } } for(i = 0 ; i < n ; i++) { printf("%d ",a[i]); } return 0; }

  • 06

    运行程序,成功截图如下;

  • 07

    气泡排序的时间复杂度为0(n^2);

(0)

相关推荐

  • 冒泡排序算法

    许多学习C语言的同学,常常会遇到要求使用冒泡排序法来按要求对一批数据进行排序,下面,小编以一个实际例子演示一下冒泡排序算法! 方法/步骤1 01 共用的数据保存在一维数组中:int a[] = { 1 ...

  • C语言排序算法:[3]教你理解简单选择排序。

    简单选择排序是经常用到的一种排序算法,它的原理是什么?如何实现,坐标X为您一一解答. 操作方法 01 一.简单选择排序一句话概括:每次选择无序数列中最小的将其放在有序数列的最后. 02 二.在简单选择 ...

  • 如何更改暴雪战网语言及其游戏语言

    战网是暴雪公司架设的游戏对战平台,它是一种可以直接连入互联网的方式,可以让世界各地的玩家相互探险旅行,很多游戏平台都可以实现和网上的玩家进行联机对战,战网的作用就是如此,在各大竞技游戏的过程中起到了非 ...

  • python冒泡排序算法怎么用

    冒泡排序是一次比较两个元素,只要满足排序要求就把他们交换过来直至将整个序列排好序,下面来看一下我们的详细方法 操作方法 01 首先我们打开电脑上的python软件,如图所示: 02 现在我们来定义冒泡 ...

  • 图解8大排序算法讲解

    排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存. 常见的内部排序算法有:插入排序.希尔排序. ...

  • 冒泡排序的算法

    冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法.它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来.走访数列的工作是重复地进行直到没有再需要交 ...

  • 如何用2014按键精灵计算距离自己最近的物品坐标

    操作方法 01 知识点引入: 数学知识:已知坐标求距离 已知坐标A(X1,Y1).B(X2,Y2),那么AB之间的距离有一个计算公式: l=sqr((X1-X2)^2+(Y1-Y2)^2) 即:距离等 ...

  • C语言插入排序算法及代码

    插入排序是排序算法的一种,它不改变原有的序列(数组),而是创建一个新的序列,在新序列上进行操作.这里以从小到大排序为例进行讲解. 操作方法 01 基本思想及举例说明 插入排序的基本思想是,将元素逐个添 ...

  • C语言入门基础

    这篇文章简单介绍C语言,以及其入门所需要学习的几个方面.以及一个最简单的入门让你程序. 操作方法 01 1.C语言,属于一种高级计算机语言,按语言分类的话,它区别于机器语言,以及汇编语言. 02 2. ...