冒泡排序--------(C每日一题)

冒泡排序:
每次将相邻的两个数比较,将小的调到前头--升序
冒泡排序一个结论:
n个数要进行n-1轮比较,第j轮要进行n-j次两两比较

循环体代码:

cpp 复制代码
int main() {
	int i, j,n,a[10],t;//n是几个数比较
	for(j=1;j<=n-1;j++)//控制轮次
		for(i=0;i<n-j;i++)//内循环控制谁和谁比较
			if (a[i] > a[i + 1])
			{
				t = a[i]; a[i] = a[i + 1]; a[i + 1] = t;
			}
}

一,用冒泡法将10个整数由大到小排序

cpp 复制代码
int main() {
	int i, j, t, a[10];
	for (i = 0; i < 10; i++)
		scanf("%d",&a[i]);
	for(i=0;i<9;i++)
		for(j=0;j<9-i;j++)
			if(a[j]<a[j+1])
			{
				t = a[j];
				a[j] = a[j + 1];
				a[j + 1] = t;
			}
	for(i=0;i<10;i++)
	printf("%d ", a[i]);
	return 0;
}
以上总结:n个数,n-1趟
第1趟 n-1次比较
第2趟 n-2次比较
第3趟 n-3次比较
...
第n-1趟 1次比较

以上仅供参考。

相关推荐
疯狂打码的少年1 分钟前
【数据结构】交换类排序:冒泡与快速排序
数据结构·笔记·算法·排序算法
-凌凌漆-23 分钟前
【C语言】结构体typedef struct与struct的区别
c语言·开发语言
Nil20828 分钟前
leetcode 108有序数组转换为二叉搜索树
数据结构·算法·leetcode
高频因子挖掘机29 分钟前
QuantDash 成交量单位统一实战:从“手”到“股”的跨市场量化数据清洗全流程
后端·算法·github
caimouse39 分钟前
ReactOS 窗口系统分析(24):输入法 — ime.c
c语言·reactos
Escalating_xu1 小时前
【C++ STL简介】从六大组件到容器、迭代器与算法协作
java·c++·算法
ly76891 小时前
C 语言从入门到进阶:语法、指针、内存管理与工程实践详解
c语言·开发语言
纪念 2291 小时前
算法二叉树(一)
算法
疯狂打码的少年2 小时前
【数据结构】哈希表:构造与冲突处理
数据结构·笔记·哈希算法·散列表
liulilittle2 小时前
llmx 学习手册 06 —— CPU 指令集优化(AVX-512 三层演进)
c++·学习·算法·ai·llm