- 浏览: 532523 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (377)
- J2EE (61)
- ORACLE (36)
- JS (15)
- EXT (0)
- win7 (12)
- TOMCAT (10)
- game (1)
- ie (5)
- etc (8)
- ibatis (3)
- ORACLE 客户端 (1)
- bat (3)
- 健康 (127)
- baby (4)
- html (12)
- myeclipse (16)
- 射手 字幕默认下载 位置 (1)
- office (0)
- car (2)
- xxx (1)
- python简介 (1)
- FusionCharts (1)
- dorado (4)
- english (3)
- weblogic (3)
- request/servlet (3)
- wsdl (1)
- offie2010 visio2010 下载 (1)
- nexus5 (0)
- chrome (3)
- ssi (2)
- 安卓 (3)
- nexus ipad (1)
- mysql (4)
- json (3)
- struts (6)
- datagrid (1)
- highcharts (1)
- tools (2)
- tool (1)
- spring3 (1)
- jedit (1)
- java (4)
- windows (1)
- easyui (2)
- 液晶显示器色温 (1)
- mybatis (1)
- where (1)
- sublime (1)
- spring4 (3)
最新评论
-
spring_springmvc:
如何在java Web项目中开发WebService接口,地址 ...
java 调用WebService服务接口 -
chenzheng8975:
阅
人生三大陷阱 -
ygbb007:
直接OD就能破解的
myBase Desktop 6.0 破解方法 -
lanlansnss:
直接删除nyfedit.ini文件即可
myBase Desktop 6.0 破解方法 -
yunzhu:
LZ写博客不太注重排版啊,排版不行别人没法看的
PermGen space
JAVA中在运用数组进行排序功能时,一般有四种方法:快速排序法、冒泡法、选择排序法、插入排序法。下面我们来了解一下。
AD:51CTO云计算架构师峰会 抢票进行中!
JAVA中在运用数组进行排序功能时,一般有四种方法:快速排序法、冒泡法、选择排序法、插入排序法。
快速排序法主要是运用了Arrays中的一个方法Arrays.sort()实现。
冒泡法是运用遍历数组进行比较,通过不断的比较将最小值或者最大值一个一个的遍历出来。
选择排序法是将数组的第一个数据作为最大或者最小的值,然后通过比较循环,输出有序的数组。
插入排序是选择一个数组中的数据,通过不断的插入比较最后进行排序。下面我就将他们的实现方法一一详解供大家参考。
<1>利用Arrays带有的排序方法快速排序
import java.util.Arrays; 2 public class Test2{
public static void main(String[] args){
int[] a={5,4,2,4,9,1};
Arrays.sort(a); //进行排序
for(int i: a){
System.out.print(i);
}
}
}
<2>冒泡排序算法
public static int[] bubbleSort(int[] args){//冒泡排序算法
for(int i=0;i<args.length-1;i++){
for(int j=i+1;j<args.length;j++){
if (args[i]>args[j]){
int temp=args[i];
args[i]=args[j];
args[j]=temp;
}
}
}
return args;
}
<3>选择排序算法
public static int[] selectSort(int[] args){//选择排序算法
for (int i=0;i<args.length-1 ;i++ ){
int min=i;
for (int j=i+1;j<args.length ;j++ ){
if (args[min]>args[j]){
min=j;
}
}
if (min!=i){
int temp=args[i];
args[i]=args[min];
args[min]=temp;
}
}
return args;
}
<4>插入排序算法
public static int[] insertSort(int[] args){//插入排序算法
for(int i=1;i<args.length;i++){
for(int j=i;j>0;j--){
if (args[j]<args[j-1]){
int temp=args[j-1];
args[j-1]=args[j];
args[j]=temp;
}else break;
}
}
return args;
}
以上就是java中的四种排序方法。不同的方法效率不一样,下面是不同的算法的比较和数据交换时的大O表示。
冒泡排序:比较O(N2) 数据交换O(N2)
选择排序:比较O(N2) 数据交换O(N)
插入排序:比较O(N2) 复制数据O(N)
在实际应用中,我们要尽量选择效率高的算法。
发表评论
-
HttpClient4.X的代理密码
2018-07-11 23:48 869HttpClient4.X的代理添加实现(转自http://b ... -
Enable debug logging for this logger for a complete list of JARs that were scann
2018-06-28 21:59 1788修改EL表达式,例如"${owner.new}& ... -
job spring3--spring4
2017-12-28 09:21 455job spring3-->spring4 org ... -
java的(PO,VO,TO,BO,DAO,POJO)解释
2017-06-12 10:26 532java的(PO,VO,TO,BO,DAO,POJO) ... -
高內聚、低耦合。多聚合、少繼承
2017-05-22 15:52 794面向對象原則:高內聚、低耦合。多聚合、少繼承 2015-05 ... -
savesavesavesavesavesave
2017-05-18 17:24 487savesavesavesavesavesave uploa ... -
eclipse 图标的含义
2016-10-13 15:11 512... -
log4j-struts异常日志打印
2016-08-24 17:04 1059log4j.appender.myfile.layout.Co ... -
struts2 Action中获取request, response对象
2016-07-21 09:43 1168ajax不能完成文件下载, ... -
request和response的中文乱码问题
2016-03-04 10:39 1375request和response的中文乱码问题 request ... -
sun.misc.BASE64Encoder找不到jar包的解决方法
2015-06-29 15:10 842sun.misc.BASE64Encoder找不到jar包的解 ... -
jar 包 用途(jar功能对照表)
2015-04-08 16:07 1637jar包用途(jar功能对照表) axis.jar SOAP ... -
struts上传
2014-08-22 15:37 473jsp页面 <meta http-equiv=" ... -
java调用打印机打印自定义的图片
2014-08-19 16:03 3822package test; import java.awt. ... -
JAVA基类和派生类
2014-05-22 16:02 1293JAVA基类和派生类 从 ... -
web.xml配置详解
2014-02-20 08:56 8202007-10-16 17:12 Web.XML 配 ... -
不要使用sun.misc.BASE64Encoder
2014-02-18 10:10 1172一直以来Base64的加密解密都是使用sun.misc包下的B ... -
自定义Result
2014-01-13 10:18 748自定义Result 5.7.1 什么是自定义Result ... -
ant+javadoc生成API文档
2014-01-02 17:16 966ant+javadoc生成API文档 分类: ant 2006 ... -
ssi包下载
2013-12-27 10:15 967Spring官网改版后找了好 ...
相关推荐
JAVA中在运用数组进行排序功能时,一般有四种方法:快速排序法、冒泡法、选择排序法、插入排序法。 快速排序法主要是运用了Arrays中的一个方法Arrays.sort()实现。 冒泡法是运用遍历数组进行比较,通过不断...
在Java编程中,对象数组排序是一项常见的任务,特别是在处理复杂数据结构时。当我们需要根据对象的多个属性进行排序时,情况会变得稍微复杂。本文将深入探讨如何在Java中实现这个功能,结合给出的标签“源码”和...
### Java中的数组知识点详解 #### 一、数组概要 数组是Java中一种重要的数据结构,它用于存储相同类型的数据集合。数组具有以下特点: 1. **数组是一种引用数据类型**:这意味着数组实际上是一个指向一组数据的...
在Java编程语言中,数组是一种特殊的数据...通过学习这些内容,开发者能够更熟练地在Java程序中运用数组,提高代码的效率和可读性。同时,掌握好数组和方法的交互也是Java编程的基础,对于理解和编写复杂程序至关重要。
Java语言中的数组是编程中最基本的数据结构之一,它允许存储同一类型的数据集合。在这个主题“07-Java基础(数组-常见问题)”中,我们将深入探讨数组在Java编程中的一些常见问题及其解决方案。 1. **数组的声明与...
- **Arrays类**:Java标准库中的一个实用工具类,提供了各种静态方法来操作数组,如排序、查找等。 #### 二、代码实现分析 在给定的代码示例中,我们首先定义了一个字符串数组`arrayToSort`,然后使用`Arrays.sort...
例如,创建一个通用的数组排序方法: ```java public static void sortArray(int[] arr) { for (int i = 0; i ; i++) { for (int j = 0; j ; j++) { if (arr[j] > arr[j + 1]) { int temp = arr[j]; arr[j] = ...
总结,Java中的数组是程序设计的基础,理解并熟练运用数组的各种操作对于学习Java至关重要。从定义、初始化到遍历、排序,再到与其他数据结构的转换,每一步都需要扎实的掌握。希望这个简要概述能对初学者提供帮助,...
Java语言中的数组是一种非常基础且...总之,Java第5章关于数组的内容是学习Java编程的基础,理解和熟练运用数组对于后续的学习和实际项目开发至关重要。通过实践和代码分析,可以加深对数组特性的理解,提高编程技能。
6. **数组操作**:包括复制数组、数组排序、查找特定元素、合并和分割数组等高级操作。 7. **数组作为方法参数**:在函数或方法中传递数组,使得函数可以对整个数组进行处理。 8. **异常处理**:访问越界数组元素...
Java程序设计中的数组是编程中不可或缺的基本数据结构,它允许我们存储多个同类型的元素在一个单一的变量中。数组提供了一种高效且结构化的...通过熟练运用数组的各种特性和方法,开发者可以更有效地解决各种计算问题。
在Java编程语言中,数组是一种非常基础且重要的数据结构,用于存储同类型的多个元素。循环是控制程序流程的关键部分,它允许我们重复执行一段代码,直到满足特定条件为止。本资料“使用循环操作Java中的数组共3页....
Java作为一种强大的编程语言,提供了丰富的工具和方法来解决此类问题。下面我们将深入探讨这个问题的解决方案、相关算法以及Java中的实现细节。 首先,我们需要理解什么是排列组合。排列是指从n个不同元素中取出m...
通过这个"Java 数组练习",你可以深入理解和熟练运用数组,为后续的编程学习打下坚实的基础。无论是基础的数组操作还是复杂的多维数组处理,都能游刃有余。在实践中不断巩固,才能更好地掌握这些知识点。
在实际编程中,灵活运用数组和方法,结合引用传递的特性,可以帮助我们解决各种复杂问题。例如,排序算法中的快速排序或归并排序,就常常利用数组的引用传递来实现高效地交换和比较元素。 总之,理解Java中的数组...
对一维数组进行增删改查:int[] num = new int[10]; 要求:用方法实现 1.输入10个整数 2.删除指定位置上的数 3.修改指定位置上的数 4.查找某个数的位置(下标) 5.查找最大值 6.查找最小值 7.对数组进行排序
Java一维数组是Java编程语言中的基础数据结构之一,它用于存储同类型的多个元素。在学习Java时,理解和掌握一维数组的声明、...在实际编程中,灵活运用数组可以解决许多问题,因此深入理解并熟练运用数组是非常重要的。
在编程领域,数组排序是基础且重要的操作,尤其是在Java中。本篇文章将深入探讨四种基本的排序算法:冒泡排序、选择排序、插入排序以及希尔排序,并结合递归算法的复杂度进行分析。这些排序算法在不同的场景下有不同...
这些是Java数组的基础知识,理解和熟练运用数组是学习Java编程的重要步骤。通过深入研究和实践,可以掌握更多高级用法,如泛型数组、数组作为方法参数传递、数组的异常处理等。"在线课第2节_数组"可能进一步探讨这些...
在Java中,数组是一种数据结构,用于存储同一类型的多个元素。数组倒置,也就是将数组中的元素顺序从后往前排列,使得原数组的第一个元素变为最后一个,最后一个元素变为第一个。这个过程可以用于各种应用场景,比如...