蓝桥-希尔排序模板题
第一眼看到这个题还在想希尔排序模板不记得了,于是去网上了搜了一个,但是考虑到这种题只看测试点能不能通过,于是用Arrays方法试了一下,发现也可以。
1.希尔排序模板ac代码
package yunkePra;
import java.util.Scanner;
public class p10希尔排序模板题 {
public static void shellSort(int[] arr) {
int n = arr.length;
for(int gap = n/2;gap>0;gap/=2) {
for(int i=gap;i<n;i++) {
int temp = arr[i];
int j;
for(j=i;j>=gap&&arr[j-gap]>temp;j-=gap) {
arr[j] = arr[j-gap];
}
arr[j]=temp;
}
}
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int[] arr = new int[n];
for(int i=0;i<n;i++) {
arr[i] = scanner.nextInt();
}
shellSort(arr);
for(int i=0;i<n;i++) {
System.out.print(arr[i]+" ");
}
}
}
2.Array.sort方法ac代码
package yunkePra;
import java.util.Arrays;
import java.util.Scanner;
public class p10test {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int[] arr = new int[n];
for(int i=0;i<n;i++) {
arr[i] = scanner.nextInt();
}
Arrays.sort(arr);
for(int i=0;i<arr.length;i++) {
System.out.print(arr[i]+" ");
}
}
}