題目:陣列反轉
要求:
把陣列的內容反轉,
如:arr{ 11 , 22 , 33 , 44 , 55 , 66 } --> { 66 , 55 , 44 , 33 , 22 , 11 },
思路-1
- 通過具體實體得,每一次都是將 arr[i] 和 arr[arr.length - 1 -i] 交換,
- 一共進行了 arr.length / 2 次,
- 引入Scanner進行掃描,從而實作隨機性,
代碼如下:
/*
只用于基礎練習,不牽扯競賽題相關要求,
*/
import java.util.Scanner;
public class Javatext6 {
public static void main(String[]args){
Scanner myScanner = new Scanner(System.in);
System.out.println("請輸出你要輸入的數字個數");
if (myScanner.hasNextInt()) {//判斷輸入的資料是否為int型別
int add = myScanner.nextInt();
int[] arr = new int[add];//創建陣列
System.out.println("請輸入具體的數值");//多輸入也沒用,記憶體就分配了那點,先到先得
for (int i = 0;i < arr.length;i++ ){//遍歷給陣列賦值
int add1 = myScanner.nextInt();
arr[i] = add1;
}
System.out.println("===陣列的原始資料===");
for (int i = 0 ;i < arr.length;i++){
System.out.print(arr[i] + "\t");
}
int temp = 0;
for (int i = 0;i < arr.length/2;i++){//將陣列中的資料進行兩兩交換,從而實作內容反轉
temp = arr[i];
arr[i] = arr[arr.length - 1 - i];
arr[arr.length - 1 - i] = temp;
}
System.out.println(" ");
System.out.println("===陣列的反轉后資料===");
for (int i = 0 ;i < arr.length;i++){
System.out.print(arr[i] + "\t");
}
}else{
System.out.println("你輸入的不是整數");
}
}
}
思路-2 (其實兩個差不多)
- 創建一個陣列,
- 輸入實驗資料
- 將陣列中的資料倒序輸出,
代碼如下:
import java.util.Scanner;
public class Javatext6 {
public static void main(String[]args){
Scanner myScanner = new Scanner(System.in);
System.out.println("請輸出你要輸入的數字個數");
if (myScanner.hasNextInt()) {
int add = myScanner.nextInt();
int[] arr = new int[add];//創建arr1陣列
System.out.println("請輸入具體的數值");
for (int i = 0; i < arr.length; i++) {
int add1 = myScanner.nextInt();
arr[i] = add1;
}
System.out.println("===陣列的原始資料===");
for (int i = 0 ;i < arr.length;i++){
System.out.print(arr[i] + "\t");
}
System.out.println(" ");
System.out.println("===陣列的反轉后資料===");
for (int i = arr.length - 1; i >= 0; i--) {
System.out.print(arr[i] + "\t");
}
}else{
System.out.println("你輸入的不是整數");
}
}
}
人不風流枉少年
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/548130.html
標籤:Java
下一篇:jwt 學習筆記
