为了账号安全,请及时绑定邮箱和手机立即绑定

ruby冒泡排序怎么写

ruby冒泡排序怎么写

斯蒂芬大帝 2019-04-11 10:06:05
ruby冒泡排序怎么写
查看完整描述

3 回答

?
料青山看我应如是

TA贡献1772条经验 获得超8个赞

代码如下:
seq = [3,4,9,0,2,5,9,7,1]
1.upto(seq.length-1) do |i|
if seq[i] < seq[i-1]
tmp = seq[i]
j = i-1
while(j>=0 && tmp<seq[j]) do
seq[j+1] = seq[j]

查看完整回答
反对 回复 2019-04-12
?
翻翻过去那场雪

TA贡献2065条经验 获得超14个赞

关于各种排序算法(冒泡排序、SHELL排序、归并排序、快速排序等)、以及各种查找算法(顺序查找、二分查找等)的源代码,现在都有现成的数据结构教材(C语言版)可以参考。那上面都会有 C 语言版的源代码。只需要编写者根据自己的需要稍微对不同的程序需求稍作修改即可。

查看完整回答
反对 回复 2019-04-12
?
RISEBY

TA贡献1856条经验 获得超5个赞

对尚未排序的各元素从头到尾依次比较相邻的两个元素是否逆序(与欲排顺序相反),若逆序就交换这两元素,经过第一轮比较排序后便可把最大(或最小)的元素排好,然后再用同样的方法把剩下的元素逐个进行比较,就得到了你所要的顺序。可以看出如果有 n 个元素,那么一共要进行 n-1 轮比较,第 i 轮要进行 j=n-i 次比较。(如:有5个元素,则要进行5-1轮比较。第3轮则要进行5-3次比较)

查看完整回答
反对 回复 2019-04-12
  • 3 回答
  • 0 关注
  • 564 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信