冒泡排序算法(Bubble Sort)

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

冒泡排序:

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

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

 案例:

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

算法主要代码:

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

案例:

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

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值