冒泡排序算法
来源:互联网 发布:mac用的office 编辑:程序博客网 时间:2024/06/07 14:07
冒泡排序思想
- 比较相邻的两个队员
- 如果左边的高,则交换两个队员的位置
- 移动一个位置,比较下面两个队员,依次比较下去,直到最后一个队员,然后结束此次比较,此次比较结果是最高的会排到最后一位,所以说最后一位是有序的
- 当第一个队员排序定位以后,返回到左端进行下一次比较
稳定性
- 稳定排序算法
- 冒泡排序就是把小的元素往前调或者把大的元素往后调。比较是相邻的两个元素比较,交换也发生在这两个元素之间。所以,如果两个元素相等,我想你是不会再无聊地把他们俩交换一下的;如果两个相等的元素没有相邻,那么即使通过前面的两两交换把两个相邻起来,这时候也不会交换,所以相同元素的前后顺序并没有改变,所以冒泡排序是一种稳定排序算法。
代码
//冒泡排序public class BubbleSort { //元素 private Integer[] elements; //索引 private Integer count; public BubbleSort(Integer max){ this.count = 0; elements = new Integer[max]; } //插入数据 public Integer insert(Integer element){ elements[count] = element; count++; return element; } //显示数据 public void display(){ for (int i = 0; i < count; i++){ System.out.println("array["+i+"]====="+this.elements[i]); } } //排序 public void bubbleSort(){ int out,in; for ( out= count-1; out > 1; out-- ){//外层循环 for (in = 0; in < out; in++){//内层循环 if(elements[in] > elements[in+1]){ swap(in,in+1); } } } } //交换顺序 private void swap(int one,int two){ int temp = elements[one]; elements[one] = elements[two]; elements[two] = temp; } //测试 public static void main(String[] args) { BubbleSort bubbleSort = new BubbleSort(5); bubbleSort.insert(3); bubbleSort.insert(6); bubbleSort.insert(4); bubbleSort.insert(90); bubbleSort.insert(23); bubbleSort.bubbleSort(); bubbleSort.display(); }}
结果
array[0]=====3array[1]=====4array[2]=====6array[3]=====23array[4]=====90
阅读全文
0 0
- 排序算法--冒泡排序
- 排序算法-冒泡排序
- 排序算法--冒泡排序
- 排序算法--冒泡排序
- 排序算法-冒泡排序
- 排序算法 冒泡排序
- 排序算法-- 冒泡排序
- 排序算法-冒泡排序
- 排序算法---冒泡排序
- 排序算法-冒泡排序
- 排序算法--冒泡排序
- 排序算法--冒泡排序
- 排序算法--冒泡排序
- 排序算法--冒泡排序
- 排序算法--冒泡排序
- 排序算法--冒泡排序
- 排序算法 冒泡排序
- 排序算法-冒泡排序
- Torch
- MFC模态对话框和非模态对话框及副窗口调用主窗口控件 自定义消息发送
- 关于弱网测试的一些要点,供测试的朋友们进行参考
- SIGHUP
- vivo部分笔试题(2017提前批)
- 冒泡排序算法
- 【cc2541历程】ds18B20
- Linux 学习(六) --- 文件系统操作命令
- [记录]初学kalman滤波算法
- MFC使用OpenCV在文档窗口中显示图像(支持多图片格式)
- 爬取网页后的抓取数据_3种抓取网页数据方法
- arp攻击原理与arp欺骗的原理和应用
- Install MariaDB
- ffmpeg入门基础知识