Java——陣列(三)
阿新 • • 發佈:2018-12-30
1.判斷一個數組裡是否有重複的數
//1.判斷一個數組裡是否有重複的數 package cn.edu.nefu2; import java.util.Scanner; public class Test01 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("請輸入陣列元素個數:"); int n = sc.nextInt(); int [] arr = new int [n]; System.out.println("請輸入陣列元素:"); for(int i=0;i<arr.length;i++){ arr[i] = sc.nextInt(); } boolean rep = false; for(int i=0;i<arr.length;i++){ for(int j=i+1;j<arr.length;j++){ if(arr[j]==arr[i]){ rep = true; } } } if(rep == false){ System.out.println("該陣列中沒有重複的數"); }else{ System.out.println("該陣列中有重複的數"); } } }
2.判斷陣列是否是對稱陣列
//2.判斷陣列是否是對稱陣列 package cn.edu.nefu2; import java.util.Scanner; public class Test02 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("請輸入陣列元素個數:"); int n = sc.nextInt(); int [] arr = new int [n]; System.out.println("請輸入陣列元素:"); for(int i=0;i<arr.length;i++){ arr[i] = sc.nextInt(); } boolean sym = true; for(int i=0;i<=(arr.length-1)/2;i++){ if(arr[i]!=arr[arr.length-1-i]){ sym = false; } } if(sym==true){ System.out.println("該陣列是對稱陣列"); }else{ System.out.println("該陣列不是對稱陣列"); } } }
3將一個正整數如35轉換成二進位制碼
//3將一個正整數如35轉換成二進位制碼 package cn.edu.nefu2; import java.util.Scanner; public class Test03 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("請輸入一個正整數:"); int num = sc.nextInt(); int sum = 0; int quo = num; while(quo>0){ quo /= 2; sum++; } //確定陣列長度 int arr [] = new int [sum]; for(int i = arr.length-1;i>=0;i--){ arr[i] = num%2; num /= 2; } for(int i=0;i<arr.length;i++){ System.out.print(arr[i]); } } }
4輸出一個數組中的第二大值
//4輸出一個數組中的第二大值
package cn.edu.nefu2;
import java.util.Arrays;
import java.util.Scanner;
public class Test04 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("請輸入陣列元素個數:");
int n = sc.nextInt();
int [] arr = new int [n];
System.out.println("請輸入陣列元素:");
for(int i=0;i<arr.length;i++){
arr[i] = sc.nextInt();
}
Arrays.sort(arr);
System.out.println(arr[arr.length-2]);
}
}
5.去掉數組裡的零形成一個沒有零的新陣列
//5.去掉數組裡的零形成一個沒有零的新陣列
package cn.edu.nefu2;
import java.util.Scanner;
public class Test05 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("請輸入陣列元素個數:");
int n = sc.nextInt();
int [] arr = new int [n];
System.out.println("請輸入陣列元素:");
for(int i=0;i<arr.length;i++){
arr[i] = sc.nextInt();
}
int sum = arr.length;
for(int i=0;i<arr.length;i++){
if(arr[i]==0){
for(int j=i;j<arr.length-i;j++){
arr[j] = arr[j+1]; //去掉0元素
}
sum--; //去掉0後的陣列長度
}
}
int [] newArr = new int [sum];
System.arraycopy(arr, 0, newArr, 0, sum);
for(int i=0;i<newArr.length;i++){
System.out.print(newArr[i]+" ");
}
}
}