数据结构与算法——冒泡排序(改进后)
//改进的冒泡程序
#include<stdio.h>
void BubbleSort(int arr[], int length);
int main( )
{
int i;
int arr[9] = {1,1,5,7,2,4,9,6,8};
int length=sizeof(arr)/sizeof(arr[0]);
BubbleSort(arr,length);
for(i=0;i<length;i++)
{
printf("%d ",arr[i]);
}
}
void BubbleSort(int arr[], int length)
{
int i,j,flag=1;//设置标志位来标记是否已是有序
for(i=0;i<length-1&&flag==1;i++)
{
flag=0;
for(j=0;j<length-i-1;j++)
{
if(arr[j]>arr[j+1])
{
int temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
flag=1;
}
}
}
}
转载于:https://www.cnblogs.com/yangyan1006/p/4872750.html
数据结构与算法——冒泡排序(改进后)相关推荐
- JS数据结构与算法——冒泡排序(把大的数字依次往后放)
一.图解排序过程 注意:比较次数和交换次数之所以不一致,是因为:比较了并不一定就需要交换两个数字的位置,比如比较 1 和 2两个数字,由于 后者本身就比前者大,所以不需要交换两者的位置. 二.代码实现 ...
- 数据结构--排序算法(冒泡排序)
一.原理 冒泡排序是最简单的排序算法,两层遍历,外部循环从第一个元素开始遍历到倒数第二个,内部循环从最后一个元素遍历到外部循环的下一个元素,内部循环比较当前元素和前一个位置的元素,如果当前元素大,则交 ...
- Java数据结构与算法——冒泡排序
1.关于排序 排序也称排序算法 (Sort Algorithm),排序是将一 组数据,依指定的顺序进行排列 的过程. 排序的分类: 内部排序: 指将需要处理的所有数据都加载 到内部存储器中进行排序. ...
- 数据结构与算法 / 冒泡排序及其优化的三种方式
一.一般写法 统一使用交换函数: void swap(int& a, int& b) {int tmp = a;a = b;b = tmp;return; } void BubbleS ...
- 冒泡排序java代码_数据结构与算法—冒泡排序(Java实现)
[toc] 冒泡排序 程序代码 package com.uplooking.bigdata.datastructure; import java.util.Arrays; public class B ...
- 数据结构与算法-----冒泡排序
冒泡排序的基本思想,就是相邻的两个数字进行比较,如果它们的顺序错误,就把它们交换过来.什么是顺序错误呢?比如我们按从大到小进行排列,那么应该是大的数在前面,小的数在后面,两个数如果是45,98这么排列 ...
- java冒泡测试代码_数据结构与算法—冒泡排序(Java实现)
[toc] 冒泡排序 程序代码package com.uplooking.bigdata.datastructure;import java.util.Arrays;public class Bubb ...
- 数据结构与算法 / 冒泡排序最坏情况下的时间复杂度解析
冒泡排序是一种用时间换空间的排序方法,最坏情况是把顺序的排列变成逆序,或者把逆序的数列变成顺序.在这种情况下,每一次比较都需要进行交换运算. 举个例子来说,一个数列 5 4 3 2 1 进行冒泡升序排 ...
- 数据结构与算法:冒泡排序、插入排序、选择排序
排序算法太多了,有很多可能你连名字都没听说过,比如猴子排序.睡眠排序.面条排序等.本文只众多排序算法中的一小撮,也是最经典的.最常用的:冒泡排序.插入排序.选择排序.归并排序.快速排序.计数排序.基数 ...
最新文章
- LeetCode简单题之重新格式化字符串
- RSA加密传输代码示例
- 11.32 php扩展模块装安
- 一行代码搞定 Scrapy 随机 User-Agent 设置
- 使用远程工具连接提示**Host *** is not allowed to connect to this mysql server**拒绝连接错误
- SpringBoot项目下resources文件夹下的静态资源浏览器无法访问
- java itextsharp_使用 c#中的 itextsharp 以 pdf 格式填充 xml
- OpenCV在相机或图像中检测QR码的实例(附完整代码)
- 一文理清Cookie、Session、Token
- gitee提交代码_git 版本控制,github和gitee
- JS中new的实现原理及重写
- java中取系统时间_JAVA中获取当前系统时间(示例代码)
- 深入探讨PageRank(二):PageRank原理剖析
- Android开源项目推荐之「最好用的Log」
- 电脑怎么找到tomcat端口_更换内存条的时候我怎么找到自己电脑配置的详细信息...
- 边缘检测——Prewitt算子
- Excel 快捷键学习笔记
- Win10家庭中文版如何添加本地用户
- 使用html制作圆弧正方形,CSS3圆角效果:从圆出发
- 麦肯锡的13个高效工作法则:重要的事,永远摆在第一位
热门文章
- PAL/NTSC/SECAM,这是全球现行的三种模拟技术彩色电视的制式
- 从printf谈可变参数函数的实现
- windows遍历目录下所有文件
- VMware打开虚拟机黑屏
- [ECMAScript] 说说你对async/await的理解?
- [react] react中发起网络请求应该在哪个生命周期中进行?为什么?
- [css] 如何使用css3实现一个div设置多张背景图片?
- [css] 在rem下如何实现1像素?
- [css] 使用css3画一个扇形
- [vue] 在使用计算属性的时,函数名和data数据源中的数据可以同名吗?