冒泡排序_c++
冒泡排序_c++
文解
冒泡排序是采用类似气泡上升的方式对数据进行排序.
例如:
我们这里有10个元素,具体数值随意,对每个数值标记上 1~10 的标记.
首先将标记为 1 的数值与标记为 2 的数值进行比较,如果(1)大于(2)我们就将(1)与(2)互换数值,否则不做任何操作,然后将(2)(3)进行相同的比较.当第九次比较结束后我们就可以将这10个数值中的最大数移至最后一位.
此时剩下9个数值,将这9个数值继续进行相同的操作.
8,7,....
最后我们得到一个升序的排序.
图解
代码
void sortArray(short * pArray, short count) {
for (short i = 0; i < count - 1; i ++) {
for (short j = 0; j < count - i - 1; j ++) {
if (pArray[j] > pArray[j + 1]) {
short temp = pArray[j];
pArray[j] = pArray[j + 1];
pArray[j + 1] = temp;
}
}
}
}
冒泡排序_c++的更多相关文章
- 冒泡排序_C语言_数组
冒泡排序_C语言_数组 #include <stdio.h> //冒泡排序 小->大 void sort(int * pArray, int len); int main(int a ...
- 排序算法--冒泡排序(Bubble Sort)_C#程序实现
排序算法--冒泡排序(Bubble Sort)_C#程序实现 排序(Sort)是计算机程序设计中的一种重要操作,也是日常生活中经常遇到的问题.例如,字典中的单词是以字母的顺序排列,否则,使用起来非常困 ...
- 选择排序_c++
选择排序_c++ GitHub 文解 选择排序的核心思想是对于 N 个元素进行排序时,对其进行 K = (N - 1) 次排序,每次排序从后(N + 1 - K)个数值中选择最小的元素与以 (K - ...
- [C#][算法] 用菜鸟的思维学习算法 -- 马桶排序、冒泡排序和快速排序
用菜鸟的思维学习算法 -- 马桶排序.冒泡排序和快速排序 [博主]反骨仔 [来源]http://www.cnblogs.com/liqingwen/p/4994261.html 目录 马桶排序(令人 ...
- 算法与数据结构(十三) 冒泡排序、插入排序、希尔排序、选择排序(Swift3.0版)
本篇博客中的代码实现依然采用Swift3.0来实现.在前几篇博客连续的介绍了关于查找的相关内容, 大约包括线性数据结构的顺序查找.折半查找.插值查找.Fibonacci查找,还包括数结构的二叉排序树以 ...
- Html5 冒泡排序演示
冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法. 它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来.走访数列的工作是重复地进行直到没有再需要 ...
- javascript冒泡排序
数组冒泡排序算法(升序) 升序:小数在前,大数在后 冒泡排序的原则:每次比较相邻两个元素,如果前一个数>后一个数,说明违反升序的要求,就将两数交换位置.否则,保持不变.继续比较下一对. 例如:玩 ...
- Java中的经典算法之冒泡排序(Bubble Sort)
Java中的经典算法之冒泡排序(Bubble Sort) 神话丿小王子的博客主页 原理:比较两个相邻的元素,将值大的元素交换至右端. 思路:依次比较相邻的两个数,将小数放在前面,大数放在后面.即在第一 ...
- C#冒泡排序算法
用了两种形式的数据,一个是泛型List,一个是数据int[].记录一下,作为自己学习过程中的笔记. using System; using System.Collections.Generic; us ...
随机推荐
- SSIS 使用OLEDB/ADO NET Source 数据流source控件 连接Oracle失败
在做数据提取的时候发现一个非常奇怪的问题. Oracle客户端是安装正确并且Toad可以正常运行的,但是在新建OLEDB/ADO NET Source 数据流source控件连接Oracle的时候一直 ...
- SQL点点滴滴_UPDATE小计
1.更新tb_card中c_customer字段的值等于tb_customer表中c_no的值 update tb_card set c_customer=ct.c_no from tb_custom ...
- 如何让LoadRunner实现多个场景运行?
如何让LoadRunner实现多个场景运行? 发布时间: 2013-11-29 10:59 作者: stevenlee 来源: 51Testing软件测试网博客 字体: 小 中 大 ...
- Linq中使用Left Join 和 Right Join
原文地址:http://www.cnblogs.com/xinjian/archive/2010/11/17/1879959.html 准备一些测试数据,如下: use Test Create tab ...
- 前后端分离, 前端如何防止直接输入URL进入页面?
转自:https://blog.csdn.net/weixin_41829196/article/details/80444870 前后端分离,如何防止用户直接在地址栏输入url进入页面,也就是判断用 ...
- QueryDSL
QueryDSL只是通用的查询框架,不支持写操作 查询出来的结果是List,我们不得不做额外的工作将它转化为领域实体
- 使用qt的hostInfo类,查看本机的IP和设备
创建NetWorkInformation类,main.cpp直接生成. #include "networkinformation.h" #include <QApplicat ...
- Oracle 查看占用undo大的sql语句
select s.sid,s.serial#,s.sql_id,v.usn,segment_name,r.status, v.rssize/1024/1024 mb from dba_roll ...
- easyui学习笔记5—panel加载其他的页面
上一篇中我们看到了panel的基本实现,没有什么难度,最重要的是data-options和class两个标签属性的定义.这里我们将看一下在panel中如何加载其他的页面. 1.先看看引用的资源文件和h ...
- LaTeX-手动安装宏包(package)以及生成帮助文档的整套流程
我使用的是ctex套装,本来已经自带了许多package,但是有时候还是需要使用一些没有预装的宏包,这时就需要自己安装package了.下载package可以从CTAN(Comprehensive T ...