冒泡排序算法(Bubble Sort)

xiaoxiao2021-02-28  129

【冒泡排序算法基本思想和案例】

冒泡排序:

         对比相邻的元素值,如果满足条件就交换元素值,把较小的元素移动到数组的前面,把大的元素移动到

         数组的后面(也就是交换两个元素的位置),这样数组元素就像气泡一样从底部上升到顶部。

 案例:

         初始数组资源【63    4    24    1    3    15】

算法主要代码:

  // 定义方法实现数组的冒泡排序算法public static void bubbleSort(int[] array) {for (int index = 1; index <= array.length - 2; index++) {for (int i = 0; i < array.length - index; i++) {if (array[i] > array[i + 1]) {// 此部分算法请参考不借助第三方变量实现两个变量对换array[i] = array[i] ^ array[i + 1];array[i + 1] = array[i + 1] ^ array[i];array[i] = array[i] ^ array[i + 1];}}}}

案例:

  package com.lemon.demo;/** 【选择排序算法基本思想和案例】* 冒泡排序:* 对比相邻的元素值,如果满足条件就交换元素值,把较小的元素移动到数组的前面,把大的元素移动到* 数组的后面(也就是交换两个元素的位置),这样数组元素就像气泡一样从底部上升到顶部。* 案例:* 初始数组资源【63 4 24 1 3 15】* */public class BubbleSort {public static void main(String[] args) {int[] array = {63, 4, 24, 1, 3, 15};System.out.println("排序前:");for (int i : array) {System.out.print(i + "\t");}System.out.println();bubbleSort(array);System.out.println("排序后:");for (int i : array) {System.out.print(i + "\t");}} // 定义方法实现数组的冒泡排序算法public static void bubbleSort(int[] array) {for (int index = 1; index <= array.length - 2; index++) {for (int i = 0; i < array.length - index; i++) {if (array[i] > array[i + 1]) {// 此部分算法请参考不借助第三方变量实现两个变量对换array[i] = array[i] ^ array[i + 1];array[i + 1] = array[i + 1] ^ array[i];array[i] = array[i] ^ array[i + 1];}}}}}

 

转载请注明原文地址: https://www.6miu.com/read-29626.html

最新回复(0)