Java对元素数组的进行升序排序
在此程序中,我们需要以给定的数组以升序进行排序,以便将元素从最小到最大最大的。这可以通过两个循环来实现。外部循环将选择一个元素,内部循环将使我们可以将所选元素与其余元素进行比较。
元素的排序方式是,最小的元素将出现在最左端,在这种情况下为1。最大元素将出现在最右端,在这种情况下为8。
算法
步骤1: START
步骤2: 初始化 arr [] = {5,2,8,7,1}。
步骤3: SET temp = 0
步骤4: 打印"原始数组的元素"
步骤5: 重复步骤6,直到i < arr.length
////for(i = 0; i < arr.length; i++)
步骤6: 打印arr[i]
步骤7: 直到i < arr.length
重复步骤8到步骤9 ////for(i = 0; i < arr.length; i++)
步骤8: 重复步骤9,直到j < arr.length
////((j = i + 1; j < arr.length; j++)
步骤9: if(arr[i] > arr[j])则
temp = arr[i]
arr[i] = arr[j]
arr[j] = temp
步骤10: 打印新行
步骤11: 打印"数组元素按升序排序"
步骤12: 重复步骤13,直到i < arr.length
////for(i=0;i < arr.length;i++)
步骤13: 打印arr[i]
步骤14: END
程序:
public class SortAsc {
public static void main(String[] args) {
//Initialize array
int [] arr = new int [] {5, 2, 8, 7, 1};
int temp = 0;
//Displaying elements of original array
System.out.println("Elements of original array: ");
for (int i = 0;i <arr.length;i++) {
System.out.print(arr[i] + " ");
}
//Sort the array in ascending order
for (int i = 0;i <arr.length;i++) {
for (int j = i+1;j <arr.length;j++) {
if(arr[i] >
arr[j]) {
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
System.out.println();
//Displaying elements of array after sorting
System.out.println("Elements of array sorted in ascending order: ");
for (int i = 0;i <arr.length;i++) {
System.out.print(arr[i] + " ");
}
}
}
输出:
Elements of original array:
5 2 8 7 1
Elements of array sorted in ascending order:
1 2 5 7 8