問題描述
給定n個數,請找出其中相差(差的絕對值)最小的兩個數,輸出它們的差值的絕對值。
輸入格式
輸入第一行包含一個整數n。
第二行包含n個正整數,相鄰整數之間使用一個空格分隔。
輸出格式
輸出一個整數,表示答案。
樣例輸入
5 1 5 4 8 20
樣例輸出
1
樣例說明
相差最小的兩個數是5和4,它們之間的差值是1。
樣例輸入
5 9 3 6 1 3
樣例輸出
0
樣例說明
有兩個相同的數3,它們之間的差值是0.
數據規模和約定
對於所有評測用例,2 ≤ n ≤ 1000,每個給定的整數都是不超過10000的正整數。
package com.CavellChance.learning;
import java.util.Arrays;
import java.util.Scanner;
public class Sort {
public static int DValue(int[] nums) {
int dValue = 9999;
for (int i = 0; i < nums.length - 1; i++) {
int n = nums[i + 1] - nums[i];
if (dValue > n)
dValue = n;
}
return dValue;
}
public static void main(String[] args) {
Scanner xScanner = new Scanner(System.in);
while (xScanner.hasNext()) {
int m = xScanner.nextInt();
int[] array = new int[m];
for (int i = 0; i < m; i++) {
array[i] = xScanner.nextInt();
}
Arrays.sort(array);
System.out.println(DValue(array));
}
}
}
“`