【数据结构】——排序算法——2.1、冒泡排序
【数据结构】——排序算法——2.1、冒泡排序
一、先上维基的图:
图一、冒泡排序
分类 | 排序算法 |
---|---|
数据结构 | 数组 |
最差时间复杂度 | |
最优时间复杂度 | |
平均时间复杂度 | |
最差空间复杂度 | 总共,需要辅助空间 |
二、描述
这个算法是最简单了解和实现的排序算法之一,每轮比较,都按照顺序将左右两个数进行,大(小)的数就往上升。就像车轮猜拳战一般,队尾的那个往前跟其他人猜拳,赢得继续向前与其他人猜拳。到最后达到队首的那个就是这一轮中最厉害的,这个最值就是第一名。紧接着,后面的继续重复刚才的车轮战。直到一个个都向前冒出来,顺序也就排好了。
三、Java程序
public class BubbleSort {public static void main(String[] args) {int[] number = {95,45,15,78,84,51,24,12};int temp = 0;for (int i = 0; i < number.length - 1; i++)for (int j = 0; j < number.length - 1 - i ; j++)if (number[j] > number[j + 1]) {temp = number[j];number[j] = number[j + 1];number[j + 1] = temp;} //if endfor(int i = 0; i < number.length; i++) System.out.print(number[i] + " ");System.out.println();} //main end
} //BubbleSort end
【数据结构】——排序算法——2.1、冒泡排序相关推荐
- 数据结构排序算法——交换排序(冒泡排序Bubble Sort)
一.算法简介: 每一趟只能确定将一个数归位.即第一趟只能确定将末位上的数归位,第二趟只能将倒数第 2 位上的数归位,依次类推下去.如果有 n 个数进行排序,只需将 n-1 个数归位,也就是要进行 n- ...
- 数据结构排序算法实验报告_[数据结构与算法系列]排序算法(二)
我的上一篇文章向大家介绍了排序算法中的冒泡排序.插入排序和选择排序.它们都是平均时间复杂度为 O(n^2) 的排序算法,同时还为大家讲解了什么是原地排序和什么是排序的稳定性.下图是这三种算法的比较,不 ...
- 数据结构---排序算法的总结
数据结构-排序算法的总结 分类 冒泡排序,时间复杂度O(n x n),空间复杂度O(1),稳定 简单选择排序,时间复杂度O(n x n),空间复杂度O(1),不稳定 希尔排序,时间复杂度O(n^1.3 ...
- 【数据结构排序算法系列】数据结构八大排序算法
排序算法在计算机应用中随处可见,如Windows操作系统的文件管理中会自动对用户创建的文件按照一定的规则排序(这个规则用户可以自定义,默认按照文件名排序)因此熟练掌握各种排序算法是非常重要的,本博客将 ...
- 数据结构-排序算法总结与感悟
数据结构-排序算法总结 一,排序的基本概念 排序:有n个记录的序列{R1,R2,-,Rn},其相应关键字的序列是{K1,K2, -,Kn },相应的下标序列为1,2,-, n.通过排序,要求找出当前下 ...
- C++基础-介绍·数据结构·排序·算法
C++基础-介绍·数据结构·排序·算法 特点 使用方向 RPC Data Struct 数据结构 栈 Stack 内存分配中的栈 队列 List 数组 Array 链表 LinkTable 树 Tre ...
- 数据结构-排序算法(c语言实现篇)
数据结构-排序算法(c语言实现篇) 排序算法是非常常用的算法,从介绍排序的基本概念,到介绍各种排序算法的思想.实现方式以及效率分析.最后比较各种算法的优劣性和稳定性. 1 排序的概念及应用 1.1 排 ...
- Java十大排序算法总结,Java排序算法总结之冒泡排序
本文实例讲述了Java排序算法总结之冒泡排序.分享给大家供大家参考.具体分析如下: 前言:冒泡排序(BubbleSort)就是依次比较相邻的两个数,将小数放在前面,大数放在后面. 下面让我们一起 ...
- js排序算法详解-冒泡排序
全栈工程师开发手册 (作者:栾鹏) js系列教程5-数据结构和算法全解 js排序算法详解-冒泡排序 1.1 原始人冒泡排序 function bubbleSort(arr) {var len = ar ...
- 数据结构—排序算法总结(插入排序、希尔排序、选择排序、堆排序、冒泡排序、快速排序、合并排序、计数排序)
*排序 所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作. 稳定性 在待排序的数组中,如果出现多个相同的关键字,例如:98751555512,中出现重复的数字,在 ...
最新文章
- 网站 java php_做网站用java还是php
- java web右键菜单,win7右键菜单管理
- xbox360无线手柄接收器驱动_八位堂USB 无线接收器让手柄不闲置,无线畅玩各平台游戏...
- 人工神经网络(Artificial Neural Netwroks)笔记-消除样本顺序的BP算法
- java停止循环label_Java中的break Label 和continue Label 例子(跳出多重循环)(转)...
- tnsname.ora 个参数解释
- OFFICE技术讲座:JDK绘制旋转斜体字体的效果
- 算法与数据结构 第3章 高级排序算法下 学习笔记
- 免费开源字体_7种华丽的免费开源字体以及何时使用它们
- 阶乘的0 【南阳 oj 题目84】
- 入门级服务器的选购——DIY篇
- foxmail 总是提示QQ 邮箱需要输入密码
- [ linux ] vim 编辑器的三种模式介绍
- 想要把邮件转换成PDF?整起!
- 华信mysql数据恢复_华信安卓手机数据恢复程序3.0
- NQA和静态路由联动
- TensorFlow 和 PaddlePaddle 安装对比
- 学习英音的电影和电视剧
- 多媒体-百科知识(转百度百科)
- 记事本编写html闪退,加载的时候出现一个记事本点确定就闪退了,萌新求解答...