文档章节

数组的排序算法(冒泡排序,选择排序,插入排序)

有种下班别走
 有种下班别走
发布于 2015/06/16 10:38
字数 251
阅读 735
收藏 14
package j2se;

/**
 * Created by jingqing.zhou on 2015/6/16.
 * 数组排序算法
 */
public class inserSort {

   /**
    *冒泡排序
    */
    public static int[] bubbleSort(){
        int[] arr = {10,5,7,45,11,-6,2};
        for(int i=0;i<arr.length-1;i++){
            for(int j=0; j<arr.length-i-1;j++){
                if(arr[j]<arr[j+1]){
                    int temp;
                    temp=arr[j];
                    arr[j]=arr[j+1];
                    arr[j+1]=temp;
                }
            }
        }
        return arr;
    }

    /**
     * 插入排序
     * @return
     */
    public static int[] insertSort(){
        int[] arr = {10,5,7,45,11,-6,2};
        for(int i=1;i<arr.length;i++){
            int j=i;
            while (j>0&&j<arr.length){
                int temp ;
                if(arr[j]<arr[j-1]){
                    temp = arr[j-1];
                    arr[j-1] = arr[j];
                    arr[j]=temp;
                }
                j--;
            }
        }
        return arr;
    }

    /**
     * 直接选择排序
     * @return
     */
    public static int[] selectSort(){
        int[] arr = {10,5,7,45,11,-6,2};
        for(int i=0;i<arr.length-1;i++){
            int min = i ;//先假定最小值就为第一个
            for(int j=min+1;j<arr.length;j++){
                if(arr[j]<arr[min]){
                    min = j;
                }
            }
            int temp;
            temp = arr[i];
            arr[i] = arr[min];
            arr[min] = temp;
        }

        return arr;
    }

    public static void main(String[] args) {
        int[] a =insertSort();
        for(int i=0;i<a.length;i++){
            System.out.print(a[i] + ", ");
        }
        System.out.println();
        int[] b =selectSort();
        for(int i=0;i<b.length;i++){
            System.out.print(b[i] + ", ");
        }
        System.out.println();
        int[] c =bubbleSort();
        for(int i=0;i<c.length;i++){
            System.out.print(c[i] + ", ");
        }
    }
}


© 著作权归作者所有

共有 人打赏支持
有种下班别走
粉丝 3
博文 99
码字总数 15218
作品 0
深圳
程序员
Java实现的几个常用排序算法详细解读

排序算法很多地方都会用到,近期又重新看了一遍算法,并自己简单地实现了一遍,特此记录下来,为以后复习留点材料。 废话不多说,下面逐一看看经典的排序算法: 1. 选择排序 选择排序的基本思...

xiahuawuyu
2012/10/06
0
0
一个Java小白通向数据结构算法之旅(7) - 简单排序总结

前言 昨天双,什么也没买。因为没有想到什么必需的用品,何况也没有钱。身为屌丝的我,只能敲敲代码,写一写总结,岂不美滋滋哉。今天看了《五亿探长雷洛》这部电影,非常喜欢刘德华饰演的雷...

cmazxiaoma
2017/11/12
0
0
Java数据结构与算法(第三章简单排序)

如何排序? 这一章中主要是三个比较简单的算法:冒泡排序、选择排序和插入排序。计算机程序不能像人一样通览所有的数据。它只能根据计算机的“比较”操作原理,在同一时间内对来个数据项进行...

小风89
2015/10/22
142
0
排序算法专项总结

1、选择排序,是每一次从未排序序列中找出一个最大或者最小的数,放到已排好序的数列最后。因此关键字比较次数跟数列的初始排列顺序是没有关系的。 2、初始数据集排列顺序与比较次数无关的有...

jinlong_xu
2017/09/10
0
0
算法与数据结构(二):排序篇-O(n^2)算法:选择 & 插入算法优化

排序基础 O(n^2)的算法虽然简单,但也实用!让我们从最简单的基础排序算法开始,打开我们的算法大门! 排序算法 O(n^2)的排序算法 最优的时间复杂度为O(nlogn)的算法。 为什么要学习O(n^2)的...

天涯明月笙
2017/09/13
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Mac OS X下Maven的安装与配置

Mac OS X 安装Maven: 下载 Maven, 并解压到某个目录。例如/Users/robbie/apache-maven-3.3.3 打开Terminal,输入以下命令,设置Maven classpath $ vi ~/.bash_profile 添加下列两行代码,之后...

TonyStarkSir
今天
3
0
关于编程,你的练习是不是有效的?

最近由于工作及Solution项目的影响,我在重新学习DDD和领域建模的一些知识。然后,我突然就想到了这个问题,以及我是怎么做的? 对于我来说,提升技能的项目会有四种: 纯兴趣驱动的项目。即...

问题终结者
今天
3
0
打开eclipse出现an error has occurred see the log file

解决方法: 1,打开eclipse安装目录下的eclipse.ini文件; 2,打开的文本文件最后添加一行 --add-modules=ALL-SYSTEM 3,保存重新打开Eclipse。...

任梁荣
昨天
4
0
搞定Northwind示例数据库,无论哪个版本的SQLServer都受用

Northwind数据库 从这里可以找到突破口: http://social.msdn.microsoft.com/Forums/zh-CN/Vsexpressvb/thread/8490a1c6-9018-40c9-aafb-df9f79d29cde 下面是MSDN: http://msdn2.microsoft......

QQZZFT
昨天
1
0
mysql主从同步,安装配置操作

准备 两台mysql服务,我这里准备了如下: 主库:192.168.176.128 从库:192.168.176.131 如何在Linux上安装mysql服务,请看https://blog.csdn.net/qq_18860653/article/details/80250499 操作...

小致dad
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部