#include stdio.h(5)
2024-08-31 18:37:25
#include <stdio.h>
int main()
{
//1、数组的排序-冒泡排序
/*
1、规则:相邻的两个数据进行比较
2、如果有N个数据,需要选择N-1次参照物来比较,
因为最后一次的数据,都被别人比过了
3、第一个选择比较参考数据的时候,会和后面(N-1)个数据都比较
第2个数据,会比较N-2次
第3个数据,会比较N-3次
4、冒泡排序关键点
4.1有两个for循环,外层循环N-1次,内层循环N-i-1次
4.2有1个if语句,用来判断大小是否需要交换的,
根据当前列和后一列数据进行比较,所以使用内层变量
4.3有一个交换的代码块,
交换的代码块需要借助一个临时变量 */ int array[] = {,,,,};
//选择比较参考数据的
for(int i=;i<-;i++)//N-1
{
//当i=0的时候 a[i] = 5 4次=N-i-1
//当i=1的时候 a[i] = 4 3次=N-i-1
//当i=2的时候 a[i] = 3 2次=N-i-1
//内层循环,1个参考数据,会比较几次
for(int j=;j<-i-;j++)//N-i-1
{
//比较的代码
//因为比较的时候是,
//当前一列的数据和后一列的数据进行比较,
//所以在选择的使用内层循环变量而不是外层变量
if(array[j] > array[j+])//判断大小
{
//交换的代码
int temp = ;
temp = array[j];
array[j] = array[j+];
array[j+] = temp;
}
}
} for(int k=;k<;k++)
{
printf("%d\n",array[k]);
} return ;
}
最新文章
- Android对话框自定义标题
- Cordova - 与iOS原生代码交互1(通过JS调用Swift方法)
- linux web服务器必需的库文件
- [转] js == 与 === 的区别
- Leetcode: Palindrome Numbers
- 使用开源工具MonoDevelop开发GTK#图形界面
- dataTable 禁止排序
- js 判断url的?后参数是否包含某个字符串
- Android Studio 2.1.x 关联SDK API Source
- 非原生APP开发中可以用到的JQ插件
- NSArray的4种遍历方式
- 三思考,实现自己定义404页:Tomcat、SpringMVC精确匹配、重写DispatchServlet
- all-document
- 20165231 2017-2018-2 《Java程序设计》第3周学习总结
- Java序列化Serializable
- java.lang.NoSuchMethodException: .<;init>;()
- Java安全通信:HTTPS与SSL
- Deep learnin简介
- 修改oracle系统参数spfile导致数据库无法启动解决
- 带你从零学ReactNative开发跨平台App开发(三)