2019独角兽企业重金招聘Python工程师标准>>>

无人不知无人不晓的冒泡排序,据说是模仿泡泡从水中浮起跑到水面的过程。来看一下代码:

package cn.songxinqiang.study.algorithm.sort;import java.util.Arrays;/*** 冒泡排序** <p>* 众里寻她千百度, 蓦然回首, 那人却在灯火阑珊处.* </p>* * @author 阿信sxq-2015年7月16日**/
public class BubbleSort {/*** 原理:在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:* 每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。** @author 阿信sxq-2015年7月16日** @param args*/public static void main(String[] args) {int a[] = { 49, 38, 65, 97, 76, 13, 27, 49, 78, 34, 12, 64, 5, 4, 62, 99, 98, 54, 56, 17,18, 23, 34, 15, 35, 25, 53, 51 };int temp = 0;for (int i = 0; i < a.length - 1; i++) {for (int j = 0; j < a.length - 1 - i; j++) {if (a[j] > a[j + 1]) {temp = a[j];a[j] = a[j + 1];a[j + 1] = temp;}}}System.out.println(Arrays.toString(a));}}

输出为:

[4, 5, 12, 13, 15, 17, 18, 23, 25, 27, 34, 34, 35, 38, 49, 49, 51, 53, 54, 56, 62, 64, 65, 76, 78, 97, 98, 99]

冒泡排序比较简单,但是也比较浪费时间,在此基础上有很多改良的排序方法,后面博客中说明

转载于:https://my.oschina.net/songxinqiang/blog/522549

基本算法--冒泡排序相关推荐

  1. 冒泡排序出现的问题_停课不停学 | 有趣的算法——冒泡排序

    停课不停学 有趣的算法--冒泡排序 01 生活中处处都有算法 每个人每天都会用到一些算法,算法也是人类使用计算机解决问题的技巧之一,但是算法并不是仅仅用于计算机领域中,包括在数学.物理甚至是每天的生活 ...

  2. C语言基础排序算法-冒泡排序

    C语言基础排序算法-冒泡排序 什么是冒泡排序? 顾名思义,这种排序方法就像水中的气泡一样,从底逐渐往上冒,一次前进一步.我们来看一个例子,看看到底是怎么冒泡的.假设有一个数组3,2,5,4,1,我们希 ...

  3. 经典排序算法 - 冒泡排序Bubble sort

    经典排序算法 - 冒泡排序Bubble sort 其原理是比较接近的数字22,按照从小到交换大或降序排列, 这样一趟过去后,最大或最小的数字被交换到了最后一位, 然后再从头開始进行两两比較交换,直到倒 ...

  4. JS数据结构与算法——冒泡排序(把大的数字依次往后放)

    一.图解排序过程 注意:比较次数和交换次数之所以不一致,是因为:比较了并不一定就需要交换两个数字的位置,比如比较 1 和 2两个数字,由于 后者本身就比前者大,所以不需要交换两者的位置. 二.代码实现 ...

  5. 排序算法-冒泡排序算法

    2019独角兽企业重金招聘Python工程师标准>>> 冒泡排序算法是所有排序算法中最简单.最基础的一种.冒泡排序算法的思路就是交换排序,通过相邻数据的交换来达到排序的目的. 冒泡排 ...

  6. 排序算法——冒泡排序(Bubble Sort)

    排序算法--冒泡排序(Bubble Sort) 算法简介(Introduction) Bubble sort is to compare adjacent elements of the list a ...

  7. C语言/Python经典算法冒泡排序

    C语言经典算法冒泡排序 #include "stdio.h" int main(){int a[10]={1,3,2,5,9,7,6,8,4,0};for (int i = 0; ...

  8. python排序算法 ——冒泡排序(附代码)

    python排序算法 --冒泡排序 文章目录 python排序算法 --冒泡排序 一.前言 二.算法描述 三.代码实现 总结 一.前言 相关知识来自<python算法设计与分析>.初级排序 ...

  9. 总结c语言基础算法——冒泡排序法和选择排序法

    1.首先无论何种排序方法其最终目的是按要求将所给数据进行排序.而在C语言中可以有很多排序的方法,这里着重介绍的是常用的较为基础和重要的算法--冒泡排序法和选择排序法. 下面将举一个例子进行讲解: 要求 ...

  10. Golang(二十一)[排序算法-冒泡排序]

    Golang-排序算法-冒泡排序 1.简介 2.原理 3.操作规则 4.Golang代码 1.升序 2.降序 3.测试 4.完整代码 5.优化 1.原冒泡排序 2.优化后 1.简介 冒泡排序(Bubb ...

最新文章

  1. 推荐一位我的好朋友,8年码农,前鹅厂工程师!
  2. 将一个数组输出到模板中来处理2
  3. 微软这次发布会巨硬:安卓折叠手机、双屏电脑,还有无线耳机和超薄平板
  4. logwrapper的作用
  5. python谷歌网页爬虫_python爬虫入门01:教你在 Chrome 浏览器轻松抓包
  6. 云原生时代, 选择.NET Core
  7. c语言强化训练作业整理1
  8. 循环冗余检错码CRC
  9. node.js 与 nvm安装教程
  10. python实现文本翻译
  11. 计算机网络提供信息传输服务,【判断题】计算机网络通常被划分为通信子网和资源子网,通信子网提供信息传输服务,资源子网提供共享资源。...
  12. m3u8\ts片段文件解密合成转换
  13. 仅需简单的文字描述,即可把文字转图片
  14. 文件/文件夹强制删除工具:IObit Unlocker绿色版
  15. 2019日历全年一张_2020年剑桥英语全年考试日历发布,参与活动还能赢取实体台历!...
  16. HTML微博浮动代码,jQuery实现仿新浪微博浮动的消息提示框(可智能定位)
  17. IoT 物联网设备端 SDK 架构设计参考
  18. mysql myisam can't open table_Can’t open file:'[Table]mytable.MYI'
  19. 服务器是由哪些硬件构成的?带你一探究竟!
  20. 《深入核心的敏捷开发:ThoughtWorks五大关键实践》读书摘记

热门文章

  1. x265-确定slice type-3
  2. 2.7 Client Commands and SQL Statements
  3. 小波图像增强matlab,用Matlab实现基于小波变换的图像增强技术
  4. 负载均衡实现,一个域名对应多个IP地址
  5. HBase应用笔记:通过Java Api与HBase交互(转自 Taobao QA Team)
  6. java对象锁与类锁区别
  7. 2018.12.08 codeforces 939E. Maximize!(二分答案)
  8. setTimeout 的定时器的妙用
  9. 结对开发——环形一维数组求最大子数组和
  10. Ane技术大全 - Devil程序员