冒泡排序和选择排序
冒泡排序
-
可以说是最简单的一种排序了,其排序的流程是
- 对比数组中的各个数据,依次比较相邻的两个元素的大小
- 如果前面的数据大于后面的数据,就交换这两个数据,如下
- 这只是一次排序过程的结果,目前数组内的数据还不是有序的,但是已经把最大值给确定了,所以还需要多次排序,所以可以看出冒泡排序并不是高效的排序算法
-
排序算法的java实现
private static void mp(int[] arrs) { int tmp ; for (int i = 1; i < arrs.length; i++) { for (int j = 0; j < arrs.length - i; j++) { if (arrs[j] > arrs[j+1]){ tmp = arrs[j]; arrs[j] = arrs[j+1]; arrs[j+1] = tmp; } } System.out.println(Arrays.toString(arrs)); } }
-
输出的排序过程为
[12, 37, -2, 3, 999] [12, -2, 3, 37, 999] [-2, 3, 12, 37, 999] [-2, 3, 12, 37, 999]
选择排序
-
这也是比较简单的一种排序算法,主要的流程是
- 遍历数组取数组内最小的数据与数组的0下标进行交换,这样就确定了最小值
- 然后从下标1之后的数据中找出最小值与下标为1的数据进行交换,就确定了第二小的数据,依次就完成了排序过程
-
排序算法的java实现
public static void xz(int[] arrs){ int index ,temp = 0; for (int i = 0; i < arrs.length; i++) { index = i; for (int j = i; j < arrs.length; j++) { if (arrs[j] < arrs[index]){ index = j;//寻找最小数下标 } } //判断最小数是否是自己 if (index != i){ temp = arrs[index]; arrs[index] = arrs[i]; arrs[i] = temp; } } System.out.println(Arrays.toString(arrs)); }
-
输出的排序过程为
[-2, 12, 37, 999, 3] [-2, 3, 37, 999, 12] [-2, 3, 12, 999, 37] [-2, 3, 12, 37, 999] [-2, 3, 12, 37, 999]
-
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
没有什么内存问题,是一行Python代码解决不了的
内存不足是项目开发过程中经常碰到的问题,我和我的团队在之前的一个项目中也遇到了这个问题,我们的项目需要存储和处理一个相当大的动态列表,测试人员经常向我抱怨内存不足。但是最终,我们通过添加一行简单的代码解决了这个问题。 结果如图所示: 我将在下面解释它的工作原理。 举一个简单的“learning”示例 - 创建一个DataItem类,在其中定义一些个人信息属性,例如姓名,年龄和地址。 class DataItem(object): def __init__(self, name, age, address): self.name = name self.age = age self.address = address 小测试——这样一个对象会占用多少内存? 首先让我们尝试下面这种测试方案: d1 =
- 下一篇
MySQL PK MongoDB:多文档事务支持,谁更友好?
作者介绍 贺春旸,凡普金科DBA团队负责人,《MySQL管理之道:性能调优、高可用与监控》第一、二版作者,曾任职于中国移动飞信、安卓机锋网。致力于MariaDB、MongoDB等开源技术的研究,主要负责数据库性能调优、监控和架构设计。 MongoDB 4.0已经发布GA版本,并且有许多新功能和改进。在本文中,我们将重点关注主要功能,毫无疑问,这是对多文档ACID事务的支持。我们将围绕隔离级别、可重复读、幻读、事务冲突检测等主要功能,通过实验与MySQL一一做对比。 首先会简述介绍下ACID事务隔离级别,然后再步入测试主题正文。 原子性(Atomicity):事务包含的所有操作要么全部成功,要么全部失败,不存在成功一半的概念。典型例子“西方二元对立思想——非此即彼”:在二元逻辑体系中只存在两种逻辑值,就是对和错,或正和负,不存在既对又错或非正非负的其他状态。 一致性(Consistency):一个事务执行之前和执行之后都必须处于一致性状态。典型例子:“金龙,你借我5000元,下个月开支给你。”不论金龙用什么方式给我转账,分几次转,借钱结束后我银行卡里的余额增加5000元,金龙卡里少了50...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- CentOS6,CentOS7官方镜像安装Oracle11G
- CentOS关闭SELinux安全模块
- CentOS7设置SWAP分区,小内存服务器的救世主
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Windows10,CentOS7,CentOS8安装Nodejs环境
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长