文档章节

3.Java数组中元素的排序

囧青年
 囧青年
发布于 2015/06/06 21:29
字数 378
阅读 7
收藏 0
  1. 数组中的元素排序按从小到大排序或从大到小排序的主要思路是,拿数组中的第一个元素依次与数组中的每一个元素进行比较,如果比较的元素比第一个的要小(这里是按从小到大比较的,从大到小同理),就将该元素放在第一个元素的坐便,急两元素进行转化。一次遍历完就会从小到大排序。具体代码如下:

    从小到大排序:

  2. public class Array {
    
    	// 进行数组从小排序
    	public static void main(String[] args) {
    
    		int a[] = new int[] { 5, 10, 7, 756, 3 };
    
    		pain(a); // 打印为未排序前的数组
    
    		ArraySort(a); // 开始排序
    
    		pain(a); // 打印排序后数组
    	}
    
    	// 创建一个方法用来排序数组中元素的顺序
    
    	public static void ArraySort(int[] array) {
    	for (int i = 0; i < array.length; i++) {
    	// 外层遍历
    
    	for (int j = i + 1; j < array.length; j++) {
    	// 内层遍历
    	if (array[i] > array[j]) // 进行判断,如果外层元素大于内层元素,就切换位置
    	{
    	// 定义一个第三方变量,用来切换位置
    	int tmp = array[i];
    	array[i] = array[j];
    	array[j] = tmp;
    	}
    	}
    	}
    	}
    
    	// 创建一个方法用来打印排序后的数组
    	public static void pain(int[] arr) {
    
    	System.out.print("[");
    	for (int i = 0; i < arr.length; i++) {
    	// 外层遍历
    
    	if (i != arr.length - 1) {
    	System.out.print(arr[i] + ",");
    	} 
    	else {
    	System.out.println(arr[i] + "]");
    	}
    	}
    	}
          }

其结果如下:


如果按从大到小排序的话,同理,只需将判断提交 

if (array[i] > array[j]) 改为array[i] < array[j]即可


© 著作权归作者所有

囧青年
粉丝 0
博文 15
码字总数 5238
作品 0
浦东
程序员
私信 提问
计数排序vs基数排序vs桶排序

从计数排序说起 计数排序是一种非基于元素比较的排序算法,而是将待排序数组元素转化为计数数组的索引值,从而间接使待排序数组具有顺序性。 计数排序的实现一般有两种形式:基于辅助数组和基...

超人汪小建
02/18
0
0
**超详细的**10种排序算法原理及 JS 实现

简介 本文介绍了常见的 10 种排序算法的原理、基本实现和常见的优化实现,并有(个人认为)足够详细的代码注释。 实在是居家工作,面试笔试必备良药。 这里只给出基于其原理的一般实现,很多...

迪斯马斯克
04/08
0
0
PHP数组常用函数分类整理

一、数组操作的基本函数 数组的键名和值 array_values($arr); 获得数组的值 array_keys($arr); 获得数组的键名 array_flip($arr); 数组中的值与键名互换(如果有重复前面的会被后面的覆盖) ...

我心中有猛狗
2016/07/05
40
0
刘祥超/Array.js

Array.js Array.js帮助开发人员更优雅地操作Javascript数组。 使用 直接引入 Array.js 或 Array.min.js: 然后在Javascript中使用: var arr = [ 1, 2, 3, 4];arr.$each(funct...

刘祥超
2017/01/14
0
0
金阳光测试算法专题——精选小算法汇总

[本文出自天外归云的博客园] 本文是对金阳光测试算法专题中一些小算法的精选汇总,利于思考与收获。 注意:原版是用java解,以下题目部分使用python解(python3),对于题目中描述不清楚的地...

天外归云
2017/06/13
0
0

没有更多内容

加载失败,请刷新页面

加载更多

读书replay《maven实战》.1.20190526

前情提要 maven这个工具用了好久了,但是一直都用的迷迷糊糊的,没有对它进行过系统性的学习,只是知道一些常用的功能怎么实现,所以20190516这一天我从JD购买了徐晓斌老师所著的《maven实战...

wanxiangming
29分钟前
0
0
真实项目案例实战——【状态设计模式】使用场景

什么是状态模式 状态模式允许一个对象在其内部状态改变的时候改变其行为。这个对象看上去就像是改变了它的类一样。 状态模式应用场景 1.一个对象的行为取决于它的状态,并且它必须在运行时刻根...

须臾之余
36分钟前
0
0
Java 实现把字符串转换成整数【底层实现】

https://blog.csdn.net/zl18310999566/article/details/80263396

qimh
39分钟前
0
0
IDEA的debugger

1、win下节省内存空间 3、条件断点

一只小青蛙
50分钟前
3
0
炸!亿级数据DB秒级平滑扩容

一步一步,娓娓道来。 一般来说,并发量大,吞吐量大的互联网分层架构是怎么样的? 数据库上层都有一个微服务,服务层记录“业务库”与“数据库实例配置”的映射关系,通过数据库连接池向数据...

编程SHA
56分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部