1 冒泡排序是什么
- 根据名字我们就可以猜到,什么东西才能冒泡,是不是这个东西比较特别才能被冒泡,所以这个算法就是比较相邻两个数字的大小,如果谁大,就进行位置的互换,互换后的第一次排列肯定最左边或者最右边是最小或者最大的,依次这样循环数组的长度-1次,就可以得到最终的结果了
2 采用数组来进行排序
- 需要注意的就是数组的下标不要越界,外层循环肯定是控制要有多少次比较,内层循环是判断每一次是否需要进行数字的交换
3 具体代码如下
package com.cxy.SortingAlgorithm;
/**
- 冒泡排序
- 思想:依次比较两个相邻的数字,如果后面数比前面的数大,就交换这两个数,依次循环下去
- /
public class BubbleSort {
int[] arr = {1,2,4,2,0,7,3,3};
public int[] bubbleSort(){
for(int i = 0 ; i<arr.length-1 ;i++){
for(int j = 0; j < arr.length-1; j++){
if(arr[j] > arr[j+1]){
swap(arr,j,j+1);
}
}
}
return arr;
}
public void swap(int[] nums, int index1,int index2){
nums[index1] = nums[index1] ^ nums[index2];
nums[index2] = nums[index1] ^ nums[index2];
nums[index1] = nums[index2] ^ nums[index1];
}
public static void main(String[] args) {
BubbleSort sort = new BubbleSort();
int[] newarr = {1,2,3};
int[] bubbleSort = sort.bubbleSort();
for (int i : bubbleSort) {
System.out.println(i);
}
}
}
---
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 1371769065@qq.com