java一维数组选择排序
时间: 2024-01-09 22:23:09 浏览: 78
以下是两种Java一维数组选择排序的例子:
1. 冒泡排序
```java
public int[] sort(int[] a) {
int temp;
for(int i=0;i<a.length;i++){
for(int j=i+1;j<a.length;j++){
if(a[i]>a[j]){
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
return a;
}
```
2. 插入排序
```java
public int[] sort(int[] a){
for(int i=0;i<a.length;i++){
for(int j=i;j>0;j--){
if(a[j-1]>a[j]){
swap(a,j-1,j);
}
}
}
return a;
}
public void swap(int[] arr,int i,int j){
arr[i]=arr[i]^arr[j];
arr[j]=arr[i]^arr[j];
arr[i]=arr[i]^arr[j];
}
```
相关问题
java一维数组冒泡排序
冒泡排序是一种简单的排序算法,它通过比较相邻的元素并换它们的位置来排序数组。下面是一个使用冒泡排序算法对Java一维数组进行排序的示例代码:
```java
public class BubbleSort {
public static void sort(int[] array) {
for (int i = 0; i < array.length - 1; i++) {
for (int j = 0; j < array.length - 1 - i; j++) {
if (array[j > array[j + 1]) {
int temp = array[j];
array[j = array[j + 1];
array[j + 1 = temp;
}
}
}
}
public static void main(String[] args) {
int[] array = {55, 33, 22, 66, 11};
sort(array);
System.out.println(Arrays.toString(array));
}
}
```
在上述代码中,我们使用两个嵌套的循环来实现冒泡排序。外层循环控制冒泡的轮数,内层循环用于比较元素并交换它们的位置。通过这种方式,每轮冒泡都将找到一个最大的元素并将其放到正确的位置上。最后,我们输出排序后的数组。
希望这个例子能够帮助你理解Java一维数组的冒泡排序过程。如果还有其他问题,请随时提问。
java一维数组的排序
Java一维数组的排序可以使用 Arrays.sort() 方法,该方法可以对数组进行升序排序。例如:
```java
int[] arr = {3, 1, 5, 2, 4};
Arrays.sort(arr);
System.out.println(Arrays.toString(arr)); // 输出 [1, 2, 3, 4, 5]
```
如果要对数组进行降序排序,可以使用自定义的 Comparator 来进行排序。例如:
```java
int[] arr = {3, 1, 5, 2, 4};
Arrays.sort(arr, new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return o2.compareTo(o1);
}
});
System.out.println(Arrays.toString(arr)); // 输出 [5, 4, 3, 2, 1]
```
这里使用了一个匿名内部类来实现 Comparator 接口,重写了 compare() 方法,使其按照降序进行排序。
阅读全文