ruby实现的插入排序和冒泡排序算法
1、插入排序
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]
j=j-1
end
seq[j+1]=tmp
end
end
seq.each {|num| puts num}
2、冒泡排序
seq = [3,4,9,0,2,5,9,7,1,100,99,24,64,18,88,66]
0.upto(seq.length-1) do |i|
exchange = false
0.upto(seq.length-1-i-1) do|j|
if seq[j]>seq[j+1]
tmp = seq[j+1]
seq[j+1] = seq[j]
seq[j] = tmp
exchange = true
end
end
if !exchange
break
end
end
seq.each {|num| puts num}
相关文章
Monkey Patch猴子补丁编程方式及其在Ruby中的运用
Monkey Patch是指在程序运行时追加代码段,一般被认为是解释型语言的特长,下面我们就来看一下Monkey Patch猴子补丁编程方式及其在Ruby中的运用2016-05-05
最新评论