Ruby特殊語法概念解析
作者:佚名
我們在這篇文章中以一個例子來為大家講解Ruby特殊語法的具體用法,方便大家理解。希望可以幫助大家提高對Ruby語言的理解程度。
Ruby語言中有許多特殊的功能值得我們去深入的研究。比如那些不同于其他編程語言的語法等。在這里我們就會了解到一些Ruby特殊語法的相關概念。#t#
題目是找零錢,假設我們需要找給別人39美元元的零錢,
那么結果將會是(美元的硬幣有25,10,5,1這種):
用Ruby特殊語法來解決,只需要兩行即可,
- def make_change(amount,
coins = [])- coins.sort! { |x,y| y <=> x }
- return coins.map!{|coin|
- f = amount/coin; amount
%= coin;Array.new(f){coin}
}.flatten- end
- p make_change(39,[10,1,5,25])
這里采用貪心算法,每次總是用***的硬幣去整除,然后將余下的錢用下一個硬幣進行同樣運算。
一句話Ruby特殊語法是我見到過最靈活敏捷的語言。
責任編輯:曹凱
來源:
博客園