ruby實(shí)現(xiàn)的插入排序和冒泡排序算法
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}
相關(guān)文章
ruby迭代map的簡(jiǎn)潔寫法實(shí)現(xiàn)原理分析
這篇文章主要介紹了ruby迭代map的簡(jiǎn)潔寫法實(shí)現(xiàn)原理分析,本文著重對(duì)簡(jiǎn)潔寫法的原理進(jìn)行解析,需要的朋友可以參考下2014-11-11
Ruby中創(chuàng)建字符串的一些技巧小結(jié)
這篇文章主要介紹了Ruby中創(chuàng)建字符串的一些技巧小結(jié),本文用先講解技巧然后給出代碼示例的方式列出了多種Ruby創(chuàng)建字符串方法,需要的朋友可以參考下2015-01-01

