java中数组排序.知识点
Posted 蚂蚁偏偏爱上树
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中数组排序.知识点相关的知识,希望对你有一定的参考价值。
import java.util.*; //选择排序 class SwitchTest { public static void main(String[] args) { int[] arr = {3,5,6,23,45,2}; //排序前 printArray(arr); //排序后 // selectSort(arr); Arrays.sort(arr);//java中已经定义好的一种排序方式,开发中,对数组排序,要使用该句代码 // bubbleSort(arr); printArray(arr); } /* 发现无论什么排序,都需要对满足条件的元素进行位置置换。 所以可以把这部分相同的代码提取出来,单独封装成一个函数 */ public static void swap(int[] arr,int a,int b) { int temp = arr[a]; arr[a] = arr[b]; arr[b] = temp; } //冒泡排序 public static void bubbleSort(int[] arr) { for(int x=0;x<arr.length-1;x++) { for(int y=0;y<arr.length-x-1;y++)//-x:让每一次比较的元素减少,-1,避免越界 { if(arr[y]>arr[y+1]) { int temp = arr[y]; arr[y] = arr[y+1]; arr[y+1] = temp; } } } } //选择排序 public static void selectSort(int[] arr) { for(int x=0;x<arr.length-1;x++) { for(int y=x+1;y<arr.length;y++) { if(arr[x]>arr[y]) { int temp = arr[x]; arr[x] = arr[y]; arr[y] = temp; } } } } public static void printArray(int[] arr) { System.out.print("["); for(int x=0;x<arr.length;x++) { if(x!=arr.length-1) System.out.print(arr[x]+", "); else System.out.println(arr[x]+"]"); } } }
以上是关于java中数组排序.知识点的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode810. 黑板异或游戏/455. 分发饼干/剑指Offer 53 - I. 在排序数组中查找数字 I/53 - II. 0~n-1中缺失的数字/54. 二叉搜索树的第k大节点(代码片段