开发者社区> 问答> 正文

举例说明冒泡排序法基本原理

举例说明冒泡排序法基本原理,还有快速排序法

展开
收起
知与谁同 2018-07-15 19:21:24 1440 0
1 条回答
写回答
取消 提交回答
  • 云栖社区聚能聊、问答管理员~发福利、搞怪,八卦我来,论技术、发话题、写博客你上!
    原理是临近的数字两两进行比较,按照从小到大或者从大到小的顺序进行交换,
    这样一趟过去后,最大或最小的数字被交换到了最后一位,
    然后再从头开始进行两两比较交换,直到倒数第二位时结束,其余类似看例子
    例子为从小到大排序,
    原始待排序数组| 6 | 2 | 4 | 1 | 5 | 9 |
    第一趟排序(外循环)
    第一次两两比较6 > 2交换(内循环)
    交换前状态| 6 | 2 | 4 | 1 | 5 | 9 |
    交换后状态| 2 | 6 | 4 | 1 | 5 | 9 |

    第二次两两比较,6 > 4交换
    交换前状态| 2 | 6 | 4 | 1 | 5 | 9 |
    交换后状态| 2 | 4 | 6 | 1 | 5 | 9 |
    第三次两两比较,6 > 1交换
    交换前状态| 2 | 4 | 6 | 1 | 5 | 9 |
    交换后状态| 2 | 4 | 1 | 6 | 5 | 9 |
    第四次两两比较,6 > 5交换
    交换前状态| 2 | 4 | 1 | 6 | 5 | 9 |
    交换后状态| 2 | 4 | 1 | 5 | 6 | 9 |
    第五次两两比较,6 < 9不交换
    交换前状态| 2 | 4 | 1 | 5 | 6 | 9 |
    交换后状态| 2 | 4 | 1 | 5 | 6 | 9 |

    第二趟排序(外循环)
    第一次两两比较2 < 4不交换
    交换前状态| 2 | 4 | 1 | 5 | 6 | 9 |
    交换后状态| 2 | 4 | 1 | 5 | 6 | 9 |

    第二次两两比较,4 > 1交换
    交换前状态| 2 | 4 | 1 | 5 | 6 | 9 |
    交换后状态| 2 | 1 | 4 | 5 | 6 | 9 |

    第三次两两比较,4 < 5不交换
    交换前状态| 2 | 1 | 4 | 5 | 6 | 9 |
    交换后状态| 2 | 1 | 4 | 5 | 6 | 9 |

    第四次两两比较,5 < 6不交换
    交换前状态| 2 | 1 | 4 | 5 | 6 | 9 |
    交换后状态| 2 | 1 | 4 | 5 | 6 | 9 |
    第三趟排序(外循环)
    第一次两两比较2 > 1交换
    交换后状态| 2 | 1 | 4 | 5 | 6 | 9 |
    交换后状态| 1 | 2 | 4 | 5 | 6 | 9 |

    第二次两两比较,2 < 4不交换
    交换后状态| 1 | 2 | 4 | 5 | 6 | 9 |
    交换后状态| 1 | 2 | 4 | 5 | 6 | 9 |

    第三次两两比较,4 < 5不交换
    交换后状态| 1 | 2 | 4 | 5 | 6 | 9 |
    交换后状态| 1 | 2 | 4 | 5 | 6 | 9 |
    第四趟排序(外循环)无交换
    第五趟排序(外循环)无交换
    排序完毕,输出最终结果1 2 4 5 6 9
    2019-07-17 22:49:44
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
图解算法小抄 立即下载
典型模型-卷积神经网络入门 从概念原理到应用实现 立即下载
低代码开发师(初级)实战教程 立即下载