码迷,mamicode.com
首页 > 编程语言 > 详细

Java连载70-冒泡算法、选择算法

时间:2020-01-10 00:27:47      阅读:81      评论:0      收藏:0      [点我收藏+]

标签:net   下界   pack   获取   ima   sdn   nbsp   span   i+1   

一、冒泡排序

1.也就是依次选出最大的放在最后面

package com.bjpowernode.java_learning;

?

public class D70_1_BubbleSort {

  public static void main(String[] args) {

    /*

     * 冒泡排序算法:有一个int类型的数组:3 1 6 2 5

     */

    int[] a = {3,1,6,2,5,45,8,9,86};

    //开始排序

    for (int i=a.length-1;i>0;i--) {

      for (int j=0;j<i;j++) {

        if(a[j]>a[j+1]) {

          int temp = a[j];

          a[j] = a[j+1];

          a[j+1] = temp;

        }

      }

      //也可以这么写

      //for(int j=0;j<i;J++){

      //  if(a[j]>a[i]){

      //    int temp = a[j];

      //    a[j] = a[i];

      //    a[i] = temp;

      //}

    }

    for(int i=0;i<a.length;i++) {

      System.out.println(a[i]);

    }

   

  }

}

技术图片

二、选择排序

1.也就是依次选出最小的放在前面

 

package com.bjpowernode.java_learning;

?

public class D70_2_SelectionSort {

  public static void main(String[] args) {

    int [] a = {45,4,8,2,69,31,2,0};

    int min = 0;

    for(int i=0;i<a.length-1;i++) {

      for(int j=i+1;j<a.length;j++) {

        if(a[i]>a[j]) {

          int temp = a[i];

          a[i] = a[j];

          a[j] = temp;

        }

      }

    }

    for(int i=0;i<a.length;i++) {

      System.out.println(a[i]);

    }

  }

}

 

技术图片

?总结:在一个循环中,flag如果有上界,那么慎用flag+1这种操作,?容易造成数组越界;flag如果有下界,那么慎用flag-1这种操作,容易造成越界,?解决方式就是循环的初始数字要选好。

 

四、源码:

D70_2_SelectionSort.java
D70_1_BubbleSort.java

https://github.com/ruigege66/Java/blob/master/D70_1_BubbleSort.java

https://github.com/ruigege66/Java/blob/master/D70_2_SelectionSort.java

2.CSDN:https://blog.csdn.net/weixin_44630050

3.博客园:https://www.cnblogs.com/ruigege0000/

4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料

 技术图片

Java连载70-冒泡算法、选择算法

标签:net   下界   pack   获取   ima   sdn   nbsp   span   i+1   

原文地址:https://www.cnblogs.com/ruigege0000/p/12174146.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!