12-咸鱼学Java-数组排序之选择,插入

32人阅读 评论(0) 收藏 举报
分类:

选择排序

public static void selectSort(int[] a)
{
    int temp = 0;                               //交换使用的临时变量
    int minIndex = 0;                           //最小数的下标
    for (int i = 0; i < a.length; i++) {        //遍历数组
        minIndex = i;                           //minIndex为当前遍历的元素
        for (int j = i+1; j < a.length; j++) {  //在当前元素之后找出最小的
            if(a[minIndex]>a[j])        
            {
                temp = a[minIndex];             //交换
                a[minIndex] = a[j];
                a[j] = temp;
            }
        }
    }                                           //每次找到最小的放到前面,则最后数组有序
}

这里写图片描述
选择排序每次再数列里面找到其后数列中最小的数,放到有序数列的最后位置,直到最后全部有序

插入排序

public static void insertSort(int a[])
{   int temp =0,j;
    for (int i = 1; i < a.length; i++) {
        temp = a[i];                    //从i号位置开始进行比较
        for (j = i-1; j >=0; j--) {
            if(a[j]>temp)
            {
                a[j+1] = a[j];
            }else
            {                           //每次排序之后前面已经有序,找到第一个比tmp小的
                break;
            }
        }
        a[j+1] = temp;                  //找到比temp小的放到当前位置之后
    }

}

这里写图片描述
插入排序每次在后面找到小的就插入到数列前面,所以前面的一直保持有序,只需要将后面的元素逐渐插入到前面的有序列表中。

查看评论

Java-数组排序(选择,冒泡,插入)

public class ds {public static void main(String[] args) {   int arr[]={4,2,1,5,8,9,3,6,7,};   System...
  • xsdf82
  • xsdf82
  • 2010-12-07 22:32:00
  • 210

java 数组的排序,含冒泡、插入、选择、快速排序。

我们对数组进行排序首先要了解一个类。Java.util.Arrays。        此类包含用来操作数组(比如排序和搜索)的各种方法。此类还包含一个允许将数组作为列表来查看的静态工厂。 除非特别...
  • qq_39702307
  • qq_39702307
  • 2017-08-02 16:30:21
  • 152

Java数组排序总结(冒泡_选择_插入_希尔)__递归算法的复杂度

  • 2016年01月23日 11:03
  • 21KB
  • 下载

15-咸鱼学Java-内部类

实例内部类 实例内部类简而言之就是类里面嵌入着类,就像环套环一样 Demo: class OuterClass2 //外部类 { private int a = 1000; ...
  • qq_38345606
  • qq_38345606
  • 2018-04-19 21:09:02
  • 15

数组排序数组排序数组排序数组排序数组排序

  • 2008年10月30日 15:30
  • 73KB
  • 下载

java-区分数字元素和字符串元素的数组排序-代码

  • 2018年02月27日 11:18
  • 21KB
  • 下载

Java数组冒泡,选择,插入三种常用排序法及自带的快速排序法

int[] arr = { 4, 9, 8, 7, 8, 5, 1, 9, 88 };bubbleSort(arr);// selectSort(arr);// insertSort(arr);Sys...
  • baidu_33430214
  • baidu_33430214
  • 2017-03-23 18:12:33
  • 351

8-咸鱼学Java-冒泡排序算法优化

先上代码 import java.util.Arrays; public class maopaoyouhua { public static void maopao(int[] a)...
  • qq_38345606
  • qq_38345606
  • 2018-04-12 23:24:39
  • 10

14-咸鱼学Java-面向对象基础:类

类 类就相当于自定义类型,有自己的数据域,有自己的方法。属于一种用户自定义类型。类的目的就是模拟现实中存在的物体,如一个Person类,一个人他有自己的名字,年龄,性别等等,他有自己所具有的动作,吃...
  • qq_38345606
  • qq_38345606
  • 2018-04-19 20:40:58
  • 35

13-咸鱼学Java-递归与斐波拉契,汉诺塔

递归简介 详细规则等,见递归简论 递归简而言之即为自己调用自己。 最不适合递归之斐波拉契 递归解法 public static int fabonic(int n) { i...
  • qq_38345606
  • qq_38345606
  • 2018-04-17 00:13:00
  • 13
    个人资料
    专栏达人 持之以恒
    等级:
    访问量: 4621
    积分: 690
    排名: 7万+
    博客专栏
    文章存档
    最新评论