algorithm - 使用 Bubble Up 的冒泡排序

标签 algorithm sorting bubble-sort

给定冒泡排序算法:

Algorithm BubbleSort(A[0...n]):
  for i <- 0 to n-2 do
    for j <- 0 to n-2-i do
      if(A[j+1] < A[j] then swap(A[j], A[j+1]))

我必须重写冒泡排序算法,使用我们在第 i 次遍历列表时将最小元素“向上冒泡”到第 i 个位置的位置。

谁能帮我解决这个问题?

最佳答案

目前你正在从头遍历数组,因此如果你遇到最大的元素,它将“冒泡”到数组的末尾。如果你想做相反的事情,将最小的元素“向下冒泡”到开头,你需要从相反的方向遍历数组,从结尾到开头。希望对您有所帮助。

关于algorithm - 使用 Bubble Up 的冒泡排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21784313/

相关文章:

algorithm - 冒泡排序算法 while 循环功能

algorithm - 找到线段已知 X 的 Y?

performance - 典型的二维数组路径查找的最快方法是什么?

java - 修改冒泡排序代码

sorting - 在向 Hadoop 中的 reducer 发送数据时如何实现负载平衡

arrays - Scala 二维数组按主列和辅助列排序

javascript - 这个冒泡排序的实现是错误的吗?

java - 计算这些算法的 Big O 复杂度?

algorithm - 这个游戏的名字是什么?

javascript - 我如何获取一个 JS 数组,它有一些元素也是数组,并使所有数组元素成为顶级元素