排序算法之冒泡排序C语言实现(冒泡排序c语言csdn)

createh54周前 (05-03)技术教程9

冒泡排序是一种简单的排序算法,它也是一种稳定的排序算法。其原理是遍历待排序序列,比较相邻的元素的大小,如果顺序不对,则交换相邻的元素。直到所有的元素都顺序排列为止。

C语言代码实现如下

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    int item[] = {15, 3, 16, 34, 43, 23, 25, 1, 18, 99, 60, 80, 75};
    // 取得数组大小
    int num = sizeof(item)/sizeof(int);

	// 输出未排序数组
	for (int n = 0; n < num; n++) {
		printf ("%2d ", item[n]);
	}
	printf ("\n");

	// 排序
    for(int i = 0; i < num - 1; i++) {
        for(int j = 0; j < num - 1; j++) {
        	if (item[j] > item[j+1]) {
        		// 交换a[j]和a[j+1]
	            int val = item[j];
	            item[j] = item[j + 1];
	            item[j + 1] = val;
	        }
    	}
	}

	// 输出已排序数组
	for (int n = 0; n < num; n++) {
		printf ("%2d ", item[n]);
	}
	printf ("\n");

	return 0;
}


linux下执行编译及执行结果

相关文章

冒泡排序(冒泡排序python)

冒泡排序(Bubble Sort)是一种简单的排序算法,其基本思想是对待排序的元素从前向后依次比较相邻的两个元素,如果顺序不对则交换它们的位置,轮比较下来,最大的元素就会“冒泡”到数组的末尾重复这个过...

冒泡排序——C语言(冒泡排序c语言什么意思)

冒泡排序的图示:假设有一个数组 [5, 3, 8, 6, 2],逐步冒泡排序的过程:第一轮:比较 5 和 3,5 > 3,交换 → [3, 5, 8, 6, 2]比较 5 和 8,5 <...

基于C语言的冒泡排序法(c语言冒泡排序思路)

冒泡排序法:对数组中的n个整数类型的数据元素(a[0]~a[n-1])进行排序。void BubbleSort(int a[],int n){ int i,j,flag=1; int temp; fo...

一文透彻解析冒泡排序(冒泡排序有几种方法)

谈一谈冒泡排序看到很多人谈算法题,上来就是一段代码,你去看去吧,自己悟去吧。心塞有的题目老长时间就是不理解。。。本文分析一下啥是冒泡排序?排序就是一组数字,按照顺序排列(从小到大) ,冒泡排序是排序的...

Python实现冒泡排序(python冒泡排序列表)

''' 冒泡排序原理:比较列表中相邻的两个元素大小,如果第2个元素比第1个元素大,就交换它俩的位置,从列表的开始到结尾, 依次对每一组相邻的2个元素都进行比较,这样最大的元素就...

十大经典排序(2)——冒泡排序(冒泡排序和简单排序)

什么是冒泡排序冒泡排序(Bubble Sort)是一种最基础的交换排序。之所以叫做冒泡排序,因为每一个元素都可以像小气泡一样,根据自身大小一点点向数组的一侧移动。冒泡排序的原理每一趟只能确定将一个数归...