美文网首页
用ruby撸代码——冒泡算法

用ruby撸代码——冒泡算法

作者: 春木橙云 | 来源:发表于2019-10-27 21:11 被阅读0次

最近双十一,公司赶上线新功能,忙疯了,终于忙里偷闲撸一下ruby代码,新手入坑,勿喷!

新源代码:(多重赋值减少代码)


$array = [2, 31, 33, 41, 16, 76]
$final_data = []

def bubble
  $array.length.times do
    $array.each_with_index do |item, index|
      if $array[index + 1]
        if item > $array[index + 1]
          $array[index],$array[index+1] = $array[index+1],$array[index]
        end
      end
    end
    $final_data.push($array[$array.length - 1])
    $array.pop
  end
end

p "原数组", $array
bubble
p "结果", $final_data

原源代码:

$array = [2, 31, 33, 41, 16, 76]
$final_data = []

def bubble
  $array.length.times do
    $array.each_with_index do |item, index|
      if $array[index + 1]
        if item > $array[index + 1]
          change_position($array, index)
        end
      end
    end
    $final_data.push($array[$array.length - 1])
    $array.pop
  end
end

def change_position (arr, index)
  arr_store = arr[index + 1]
  arr[index + 1] = arr[index]
  arr[index] = arr_store
end

p "原数组", $array
bubble
p "结果", $final_data

输出结果:

"原数组"
[2, 31, 33, 41, 16, 76]
"结果"
[76, 41, 33, 31, 16, 2]

总结:

  • 使用到的知识包括:循环语句、全局变量、局部变量、函数定义方法、打印功能、if判断语句、数组的相关方法等;
  • 实现方式相对简单,有待打磨代码。

相关文章

  • 用ruby撸代码——冒泡算法

    最近双十一,公司赶上线新功能,忙疯了,终于忙里偷闲撸一下ruby代码,新手入坑,勿喷! 新源代码:(多重赋值减少代...

  • 用ruby撸代码——选择排序算法

    最近双十一,公司赶上线新功能,忙疯了,终于忙里偷闲撸一下ruby代码,新手入坑,勿喷! 新源代码:(多重赋值节省代...

  • 带你刷leetCode冒泡排序

    01. 算法 简单说程序中的算法,就是观察规律,用代码实现逻辑。 02. 冒泡排序 冒泡排序(英语:Bubble ...

  • 算法-冒泡排序

    算 法:冒泡排序算法时间复杂度: 冒泡排序算法概述 冒泡排序伪代码 冒泡排序实现 冒泡排序算法概述 冒泡排...

  • 排序算法

    常见排序算法 本文涉及的算法有:冒泡排序选择排序计数排序 冒泡排序 伪代码 流程图 选择排序 伪代码 流程图 计数...

  • python-计算

    斐波纳契数列代码 判断素数(质数)代码 判断闰年代码 冒泡算法代码

  • IOS常见算法

    常见算法: 快速排序: 选择排序: 冒泡排序: 测试代码:

  • 常见的几种排序算法

    1.冒泡算法 代码: private void bubbleSort(int[] arr) { for(int i...

  • 关于JavaScript-2:基本排序算法

    基本排序算法 1.冒泡排序 示例代码: 2.插入法排序 示例代码: 3.选择排序 示例代码: 以上三种排序算法个人...

  • 冒泡算法

    一、常用冒泡算法 二、优化冒泡算法

网友评论

      本文标题:用ruby撸代码——冒泡算法

      本文链接:https://www.haomeiwen.com/subject/hwpmvctx.html