冒泡,插入,选择排序

import java.util.Arrays; public class SortTest { public static void main(String[] args) { int[] arry1 = { 8,6,2,1,7,5,3,4,9}; bubbleSort(arry1); System.out.println(Arrays.toString(arry1)); int[] arry2 = { 8,6,2,1,7,5,3,4,9}; insertSort(arry2); System.out.println(Arrays.toString(arry2)); int [] arry3={8,6,2,1,7,5,3,4,9}; selectionSort(arry3); System.out.println(Arrays.toString(arry3)); } /* * 冒泡 */ public static void bubbleSort(int[] arry) { for (int i = 0; i < arry.length; i++) { for (int j = 0; j < arry.length - i - 1; j++) { if (arry[j] > arry[j + 1]) { arry[j]^=arry[j+1]; arry[j+1]^=arry[j]; arry[j]^=arry[j+1]; } } } } /* * 插入排序 */ public static void insertSort(int[] arry) { for (int i = 1; i < arry.length; i++) { //循环迭代,从1到ary.length外层迭代, //把下标1到ary.length对应的元素插入到 //前半已经排序的数组中 int firstOne = arry[i]; int insertIndex = i; for (int j = i - 1; j >= 0 && firstOne < arry[j]; j--) { //取第一个未排序的元素,从后往前逐一与 //已经排序的元素比较,如果第一个元素比被比较元素 //小,就移动被比较元素,否则就插入到当前位置。 arry[j + 1] = arry[j]; insertIndex = j; } arry[insertIndex] = firstOne; } } /* * 选择排序 */ public static void selectionSort(int[] arry) { //每次找个最小的 for (int i = 0; i < arry.length - 1; i++) { // 每次在i到ary.length 范围内找一个最小的 int min = arry[i]; int minIndex = i; for (int j = i + 1; j < arry.length; j++) { if (min > arry[j]) { min = arry[j]; minIndex = j; } }//换到排序结果的最后一个位置上 int temp = arry[i]; arry[i] = arry[minIndex]; arry[minIndex] = temp; } } }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值