public class ceshi {
public static void main(String[] args) {
int n = 5;
int[] a = { 8, 5, 4, 6, 2, 1, 7, 9, 3 };
HashMap map = new HashMap();
for (int i = 0; ia.length; i++) {
map.put(a[i], i); // 将值和下标存入Map
}
// 排列
List list = new ArrayList();
Arrays.sort(a); // 升序排列
for (int i = 0; ia.length; i++) {
list.add(a[i]);
}
for (Object object : list) {
System.out.print(object + ",");
}
System.out.println();
// 查找原始下标
for (int i = 0; in; i++) {
System.out.print(map.get(a[i]) + ",");
}
}
}
运行结果如下:
java中排序方法有哪些1、直接插入排序:最基本的插入排序,将第i个插入到前i-1个中的适当位置 。
2、折半插入排序:因为是已经确定了前部分是有序序列,所以在查找插入位置的时候可以用折半查找的方法进行查找 , 提高效率 。
3、
希尔排序:
又称缩小增量排序法 。把待排序序列分成若干较小的子序列,然后逐个使用直接插入排序法排序,最后再对一个较为有序的序列进行一次排序,主要是为了减少移动的次数 , 提高效率 。原理应该就是从无序到渐渐有序 , 要比直接从无序到有序移动的次数会少一些 。
4、
冒泡排序:反复扫描待排序序列 , 在扫描的过程中顺次比较相邻的两个元素的大小,若逆序就交换位置 。第一趟,从第一个数据开始,比较相邻的两个数据 , (以升序为例)如果大就交换,得到一个最大数据在末尾;然后进行第二趟,只扫描前n-1个元素,得到次大的放在倒数第二位 。以此类推,最后得到升序序列 。如果在扫描过程中 , 发现没有交换,说明已经排好序列,直接终止扫描 。所以最多进行n-1趟扫描 。
5、快速排序:
思想:冒泡排序一次只能消除一个逆序 , 为了能一次消除多个逆序 , 采用快速排序 。以一个关键字为轴,从左从右依次与其进行对比,然后交换 , 第一趟结束后,可以把序列分为两个子序列 , 然后再分段进行快速排序,达到高效 。
此外还有选择、归并、分配排序等等及它们的子类排序
【java后台代码怎么排序 java代码排序快捷键】java后台代码怎么排序的介绍就聊到这里吧 , 感谢你花时间阅读本站内容,更多关于java代码排序快捷键、java后台代码怎么排序的信息别忘了在本站进行查找喔 。
推荐阅读
- 小程序孝感随手拍怎么用,随手拍小程序主要分为
- linux复制的命令,linuxs复制命令
- 球球英雄怎么投射到电脑上,球球英雄怎么和好友一起玩
- 铝板直播教程,铝板做法
- 怎么保存java代码 java代码怎么保存到桌面
- u盘怎么显示在桌面,u盘怎么显示在桌面悬浮窗
- 字典javascript,字典查字
- 男生喜欢养成游戏吗小说,男生喜欢养成女生吗
- 关于华为云盘照片怎么移到硬盘的信息