Java程式實現分組反轉陣列
可以透過反轉指定大小的子陣列來實現對陣列的分組反轉。本文介紹了一種按指定大小分組反轉陣列的技術。此技術可用於各種計算任務和演算法設計。程式接收陣列和分組大小作為輸入,並按該大小分組反轉陣列。然後將原始陣列和修改後的陣列列印到控制檯。
問題陳述
編寫一個Java程式,按給定大小分組反轉陣列。示例如下:
輸入
Original array = 1 2 3 4 5 6 7 8 9 10
輸出
Modified array = 3 2 1 6 5 4 9 8 7 10
按給定大小分組反轉陣列的步驟
以下是按給定大小分組反轉陣列的步驟:
Java程式實現分組反轉陣列
這是一個演示如何按指定大小分組反轉陣列的Java程式:
public class Example {
public static void main(String[] args) {
int arr[] = {1, 2, 3, 4, 5, 6, 7, 8, 9,10};
int size = 4;
int n = arr.length;
System.out.print("Original array is: ");
for (int i = 0; i < n; i++)
System.out.print(arr[i] + " ");
for (int i = 0; i < n; i += size) {
int left = i;
int right = Math.min(i + size - 1, n - 1);
int temp;
while (left < right) {
temp = arr[left];
arr[left] = arr[right];
arr[right] = temp;
left += 1;
right -= 1;
}
}
System.out.print("
Modified array is: ");
for (int i = 0; i < n; i++)
System.out.print(arr[i] + " ");
}
}
輸出
Original array is: 1 2 3 4 5 6 7 8 9 10 Modified array is: 4 3 2 1 8 7 6 5 10 9
程式碼解釋
程式用值{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}初始化陣列arr,並將分組大小設定為4,表示要反轉的子陣列的大小。陣列的長度儲存在變數n中。使用for迴圈迭代陣列並列印每個元素來列印原始陣列。然後,程式使用另一個for迴圈以size為增量遍歷陣列,按4個元素一組反轉陣列。對於每個組,分別在組的開頭和結尾初始化兩個指標left和right。while迴圈交換這些指標處的元素,向內移動直到left不再小於right。
處理所有組後,使用另一個for迴圈迭代陣列並列印每個元素來列印修改後的陣列。最終輸出顯示了原始陣列和修改後的陣列,顯示了每四個元素一組反轉的子陣列。
結論
程式成功地按給定大小分組反轉了陣列。輸出顯示了原始陣列和按大小為4分組反轉後的修改後的陣列。程式演示了一種高效的反轉給定大小子陣列的方法,這在資料處理和演算法設計等各種應用中非常有用。廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP