文档章节

冒泡排序、选择排序、插入排序(java版)

十一11
 十一11
发布于 2016/04/03 15:57
字数 212
阅读 11
收藏 0
package sort;

import java.util.Arrays;

public class BubbleSort {

	public static void main(String[] args) {
		int[] arrays = { 1, 4, 7, 3, 9, 0 };
		for (int i = arrays.length - 1; i > 0; i--) { //外循坏:大-->小
			for (int j = 0; j < i; j++) {//内循环:小-->大
				if (arrays[j] > arrays[j + 1]) { //交换
					int temp = arrays[j + 1];
					arrays[j + 1] = arrays[j];
					arrays[j] = temp;
				}
			}
		}
		System.out.println(Arrays.toString(arrays));

	}

}
package sort;

import java.util.Arrays;

public class SelectSort {
	public static void main(String[] args) {
		int[] arrays = { 1, 4, 7, 3, 9, 0 };
		for (int i = 0; i < arrays.length - 1; i++) {
			int minIndex = i; //寻找最小值的下标
			for (int j = i + 1; j < arrays.length; j++) {

				if (arrays[minIndex] > arrays[j]) {
					minIndex = j;
				}
			}
			int temp = arrays[i];
			arrays[i] = arrays[minIndex];
			arrays[minIndex] = temp;
		}
		System.out.println(Arrays.toString(arrays));
	}
}
package sort;

import java.util.Arrays;

public class InsertSort {
	public static void main(String[] args) {
		int[] arrays = { 1, 4, 7, 3, 9, 0 };
		for (int i = 1; i < arrays.length; i++) {
			int marked = arrays[i];//标记 关键
			while (i > 0 && marked < arrays[i - 1]) {
				arrays[i] = arrays[i - 1];//右移
				i = i - 1;
			}
			arrays[i] = marked;
		}
		System.out.println(Arrays.toString(arrays));
	}
}



© 著作权归作者所有

十一11
粉丝 6
博文 80
码字总数 19784
作品 0
杭州
私信 提问
JAVA中运用数组的四种排序方法

JAVA中在运用数组进行排序功能时,一般有四种方法:快速排序法、冒泡法、选择排序法、插入排序法。 快速排序法主要是运用了Arrays中的一个方法Arrays.sort()实现。 冒泡法是运用遍历数组进...

IceRainYWC
2014/03/17
33
0
JAVA中运用数组的四种排序方法

JAVA中在运用数组进行排序功能时,一般有四种方法:快速排序法、冒泡法、选择排序法、插入排序法。 快速排序法主要是运用了Arrays中的一个方法Arrays.sort()实现。 冒泡法是运用遍历数组进...

闫三
2012/05/08
64
0
面试 10:玩转 Java 选择排序和插入排序

面试 10:Java 玩转选择排序和插入排序 昨天给大家讲解了 Java 玩转冒泡排序,大家一定觉得并没有什么难度吧,不知道大佬们玩转了吗?不知道大家有没有多加思考,实际上在我们最后的一种思路...

nanchen2251
2018/07/17
0
0
面试 10:玩转 Java 选择和插入排序,附冒泡最终版本

面试 10:Java 玩转选择排序和插入排序 昨天给大家讲解了 Java 玩转冒泡排序,大家一定觉得并没有什么难度吧,不知道大佬们玩转了吗?不知道大家有没有多加思考,实际上在我们最后的一种思路...

nanchen2251
2018/07/17
0
0
面试 10:玩转 Java 选择和插入排序,附冒泡最终源码

昨天给大家讲解了 Java 玩转冒泡排序,大家一定觉得并没有什么难度吧,不知道大佬们玩转了吗?不知道大家有没有多加思考,实际上在我们最后的一种思路上,还可以再继续改进。 我们先看看昨天...

南尘
2018/07/17
0
0

没有更多内容

加载失败,请刷新页面

加载更多

如何有效地计算JavaScript中对象的键/属性数量?

计算对象的键/属性数的最快方法是什么? 是否可以在不迭代对象的情况下执行此操作? 即不做 var count = 0;for (k in myobj) if (myobj.hasOwnProperty(k)) count++; (Firefox确实提供了一...

技术盛宴
23分钟前
3
0
百度网址安全中心拦截解除的办法分享

临近2019年底,客户的公司网站被百度网址安全中心拦截了,公司网站彻底打不开了,影响范围很大,于是通过朋友介绍找到我们SINE安全公司寻求帮忙解封,关于如何解除百度的安全拦截提示,下面就...

网站安全
35分钟前
3
0
Tomcat8源码分析-启动流程-start方法

上一篇:Tomcat8源码分析-启动流程-load方法 前面讲了启动流程中的Catalina.load,进一步调用绝大部分组建的init操作,主要完成对server.xml解析,并根据解析的结果结合设置的Rule(规则)构造...

特拉仔
43分钟前
6
0
Xamarin.FormsShell基础教程(7)Shell项目关于页面的介绍

Xamarin.FormsShell基础教程(7)Shell项目关于页面的介绍 轻拍标签栏中的About标签,进入关于页面,如图1.8和图1.9所示。它是对应用程序介绍的页面。 该页面源自Views文件夹中的AboutPage.x...

大学霸
50分钟前
3
0
一步一步理解Impala query profile(一)

很多Impala用户不知道如何阅读Impala query profile来了解一个查询背后正在执行的操作,从而在此基础上对查询进行调优以充分发挥查询的性能。因此我想写一篇简单的文章来分享我的经验,并希望...

九州暮云
51分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部