优化以后的冒泡


int[] a={5,2,3,4,1,6,7,8,9};
boolean flag=true;
int t=0;
for(int j=0;j<a.length-1;j++)
{
  for(int i=0;i<a.length-i-1;i++)
  {
    if(a[i]>a[i+1])
    {
      t=a[i];
      a[i]=a[i+1];
      a[i+1]=t;
      flag=false;
    }
    if(flag==true)
    {
      break;
    }
  }
}

System.out.println(Arrays.toString(a));

原文地址:https://www.cnblogs.com/lwd521/p/11450902.html

时间: 2024-10-23 06:28:54

优化以后的冒泡的相关文章

php algorithm - bubble

<?php //php algorithm bubble // 3, 8 , 99, 75, 23, 1, 29, 51, 24, 13, 78. //第一次循环,如果有小元素就往后走,即冒泡,这样循环一次,最小的1就冒泡到最顶部了,即$array[10]=1; //第二次循环,如果有小元素就往后走,及冒泡,这样循环一次,第二小的3就冒泡到倒数第二的位置了,即$array[9]=3; //...以此类推.遍历循环数组的个数-1次,就按照从大到小将数组排序了, //其中可以做些优化,第一次冒泡需要

顺序表操作补充(查找方法增加)

顺序表操作补充 二分查找 a.非递归方法实现二分查找 1 //[] 2 int BinarySearch(SeqList *pSeq, ElemType x) 3 { 4 assert(pSeq); 5 int left = 0; 6 int right = pSeq->size - 1; 7 while(left<=right) 8 { 9 int cur = left+(right-left)/2; 10 if(pSeq->array[cur] == x) 11 { 12 retur

深入理解-事件委托

深入理解-事件委托 2016-11-20 15:02javascript.web开发综合.性能优化JS性能优化.事件冒泡.事件委托.事件委托优化.事件委托导致性能损失 65 views 很多人是在使用事件委托的,那对于一个使用者来说,只要能正确的使用好事件委托,完成工作,就算可以了,那么你有认真的考虑过事件委托的原理,以及你的使用场景是否适合使用事件委托呢,如果需要使用事件委托,那么你是否有正确的使用呢?这里我想简单的说一下我对事件委托的理解,希望可以有机会多多交流. 概述 事件委托有哪些好处,

7种排序 C++实现

在看了morewindows的白话经典算法的排序教程后,我逐个从简单到难用C++ 来实现了一遍,增加自己的理解和记忆,以下是源代码和测试结果,代码关键部分有注释: #include <iostream> using namespace std; // todo:所有排序写成一个继承模板算法类,这样就不仅仅是支持int的排序了 // 1.1原始冒泡算法,排序出一个逐渐增长的数组 class BubblingSort1 { public: BubblingSort1(int arr[], int

《冒泡排序》算法设计之二

冒泡排序过程 1.首先比较相邻的两个元素,如果前面数据大于后面数据的话,就将这两个数进行交换,依次推,直到完成第N-1个记录与第N个记录交换为止(第一趟起泡). 2.然后再进行第二趟气泡.由第一趟气泡,可知末尾是最大数,所以第二趟之比较前N-1个数 3.第三趟--   比较N-2个数 ................................................................................... 冒泡分析 通过上述的过程分析,可以知道冒泡就好

【面试必备】手撕代码,你怕不怕?

Part 1.生产者-消费者问题这绝对是属于重点了,不管是考察对于该重要模型的理解还是考察代码能力,这都是一道很好的考题,所以很有必要的,我们先来回顾一下什么是生产者-消费者问题: 问题简单回顾 如果想学习Java工程化.高性能及分布式.深入浅出.微服务.Spring,MyBatis,Netty源码分析的朋友可以加我的Java高级交流:854630135,群里有阿里大牛直播讲解技术,以及Java大型互联网技术的视频免费分享给大家. 生产者消费者问题(英语:Producer-consumer pr

排序算法(三)冒泡、选择排序的Python实现及算法优化详解

说在前面 最近一年太忙,博客长草了.近日用Python实现了常用排序算法,供大家参考. Java版本排序算法及优化,请看以前的文章. <排序算法之简单排序(冒泡.选择.插入)> <排序算法(二)堆排序> 1.排序概念 这里不再赘述,请参看前面2篇文章 2.简单排序之冒泡法Python实现及优化 原理图 2.1.基本实现 num_list = [     [1, 9, 8, 5, 6, 7, 4, 3, 2],     [1, 2, 3, 4, 5, 6, 7, 8, 9] ] nu

jQuery事件对象的作用(利用冒泡事件优化)

事件中的Event对象容易被初学者忽略掉,可能大多时候初学者不知道怎么去用它,但有些时候它还是非常有用的 一个标准的"click"点击事件 $(elem).on("click",function(event){ event //事件对象 }) 在不同浏览器之间事件对象的获取, 以及事件对象的属性都有差异.jQuery根据 W3C 标准规范了事件对象,所以在jQuery事件回调方法中获取到的事件对象是经过兼容后处理过的一个标准的跨浏览器对象 这里不在千篇一律的说方法的

交换排序------冒泡法 及其优化

上大学学数据结构的时候就学过  冒泡法,   作为比较经典的排序方式由于其时间复杂较高一直作为入门级的算法,虽然冒泡算法在实际应用中较少但是也是有一定的研究价值的,这里给出三种实现,第一种为原始算法时间复杂度为 O(n);  第二种为加入标志位, 使算法在待排序数据已成有序情况前提前结束:  第三种,记录每一趟排序后最后交换的两个元素中的较小下标并将其作为下次排序的上限, 使算法可以在待排序数据中直接跨过尾部已经有序的数据元素减少比较次数. 冒泡排序原始算法: #include <iostrea