java--冒泡排序

原创 2015年07月09日 14:00:31
 冒泡排序法:关键字较小的记录好比气泡逐趟上浮,关键字较大的记录好比石块下沉,每趟有一块最大的石块沉底。


算法本质
:(最大值是关键点,肯定放到最后了,如此循环)每次都从第一位向后滚动比较,使最大值沉底,最小值上升一次,最后一位向前推进(即最后一位刚确定的最大值不再参加比较,比较次数减1)


复杂度: 时间复杂度 O(n2) ,空间复杂度O(1)

JAVA源代码
/*
选择排序
*/
class ArrDemo1
{
public static void MP(int[] arr)
{
  for(int x=0;x<arr.length-1;x++)
  {
   for(int y=0;y<arr.length-x-1;y++)
   {
       if(arr[y]>arr[y+1])
     {
       int t=arr[y];
       arr[y]=arr[y+1];
       arr[y+1]=t;
     }
     }
   } 
 }
 public static void main(String[] args)
  {
   int[] arr={4,5,6,3,8,9};
    //排序前
   printArray(arr);
   //排序
   
   MP(arr);
    //排序后
     printArray(arr);
  }   
public static void printArray(int[] arr)
{
 System.out.print("[");
  for(int x=0;x<arr.length;x++)
  {
    if(x!=arr.length-1)
         System.out.print(arr[x]+",");
   else
         System.out.println(arr[x]+"]");
   }
 }

Java--冒泡排序

冒泡算法原理冒泡排序算法的运作如下: 比较相邻的元素。如果第一个比第二个大,就交换他们两个。 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。 针对所...
  • appleLg
  • appleLg
  • 2017年01月13日 17:28
  • 196

JAVA--冒泡排序、选择排序

//从小到大 --冒泡排序int[] data={9,10,3,1,7,6};for (int i=data.length-1;i>0 ;i-- ) {for (int j=0;j data[j+1]...
  • Ayang592462878
  • Ayang592462878
  • 2016年06月15日 09:51
  • 64

java--排序算法之冒泡排序

算法简介 冒泡排序是一种最基础也是最简单的排序算法,它是一种稳定排序算法,其平均时间复杂度为O(n2)On2,空间复杂度为O(1)O1,是一种原地排序算法。 算法原理(从后往前冒泡) ...
  • zzzzzdddddxxxxx
  • zzzzzdddddxxxxx
  • 2016年06月06日 15:25
  • 209

数据结构JAVA--冒泡排序

package com.function.demo_01; /**  * @author OF   * 2014年12月31日   * 数据结构--冒泡排序  * 算法描述:  *...
  • oufua
  • oufua
  • 2015年01月02日 17:35
  • 188

Java--冒泡排序(BubbleSort)

class BubbleSort{ /*冒泡排序 相邻两个元素进行比较,如果符合条件换位。 第一圈:最值出现在了最后位。 */ public static void BubbleSor...
  • u011223329
  • u011223329
  • 2013年12月29日 15:43
  • 305

Java--选择排序,冒泡排序

import java.util.*; /* 对给定数组进行排序。 {5,1,6,4,2,8,9} */ class ArrayTest2 { /* 选择排序。 内循环结束一次,最值出现...
  • zlQQhs
  • zlQQhs
  • 2013年04月07日 12:28
  • 808

冒泡排序由浅入深详细分析图解

冒泡排序 * 相邻元素两两比较,大的往后放,第一次完毕后,最大值就出现在 * 最大索引处,同理,继续,即可得到一个排序好的数组 * * 规律: * 1、两两比较,大的往后放。 ...
  • starjuly
  • starjuly
  • 2016年12月25日 19:49
  • 3502

OC的冒泡排序

#import int main(int argc, const char * argv[]) { @autoreleasepool { /* 冒泡...
  • qq331429844
  • qq331429844
  • 2015年10月13日 21:04
  • 6577

【原创】增强版冒泡排序算法-java版

第N趟循环,如果已经没有移动元素的操作,说明排序已完成,循环应该退出,不必再执行后续的循环操作,因为就算比较也不会再有元素会被移动。增加此控制计数器。控制循环退出。...
  • li396864285
  • li396864285
  • 2016年06月13日 17:39
  • 566

java中冒泡排序,根据对象的属性,排对象

主程序排序: public class TestDmo { public static void main(String[] args) { List list=getData(); ...
  • zhaihaohao1
  • zhaihaohao1
  • 2017年06月26日 09:05
  • 183
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java--冒泡排序
举报原因:
原因补充:

(最多只允许输入30个字)