ruby杂
分享到...
復(fù)制網(wǎng)址郵件QQ空間新浪微博MSN騰訊微博人人網(wǎng)開心網(wǎng)百度搜藏谷歌Buzz搜狐微博騰訊朋友淘江湖網(wǎng)易微博豆瓣查看更多(96)
這是什么工具?
JiaThis
分享到各大網(wǎng)站
復(fù)制網(wǎng)址收藏夾郵件谷歌BuzzQQ空間百度搜藏新浪微博搜狐微博網(wǎng)易微博騰訊微博人人網(wǎng)開心網(wǎng)搜狐白社會淘江湖百度空間騰訊朋友天涯社區(qū)鳳凰微博飯否手機(jī)優(yōu)士網(wǎng)GMAIL郵箱Hotmail郵箱Yahoo! mail飛信51社區(qū)谷歌有道書簽QQ收藏MSN新浪vivi微軟live雅虎收藏115收藏和訊天極139說客百度貼吧好誒嘀咕網(wǎng)豆瓣抓蝦鮮果做啥人間網(wǎng)Follow5和訊微博夢幻人生deliciousdiggfacebooktwittermyspacePOCO網(wǎng)若鄰網(wǎng)中金微博樂收奇客發(fā)現(xiàn)同學(xué)網(wǎng)挖客網(wǎng)收客網(wǎng)創(chuàng)業(yè)邦就喜歡114啦救救地球抽屜網(wǎng)遞客網(wǎng)豆瓣9點(diǎn)黑米書簽寶盒網(wǎng)易集網(wǎng)PDF在線轉(zhuǎn)換友好打印英文翻譯谷歌閱讀器w3c驗(yàn)證Bit.lyDIIGO.comEverNoteFriendFeedLinkedInMIXXNetLogNetvibes.comPhonefavsping.fmPlaxo.comPollAdiumRedditMister-WongStumbleuponPlurk.comFunp.comAsk.commysharefwisp
這是什么工具?
JiaThis
Lazy evaluation in Ruby_Ruby_編程開發(fā)_程序員俱樂部
中國優(yōu)秀的程序員網(wǎng)站程序員頻道CXYCLUB技術(shù)地圖
最新資訊 | 百度新聞 | GOOGLE地圖 | RSS訂閱 | 更多
- 職場話題
- 生活休閑
- 戀愛交友
- 程序人生
- 學(xué)習(xí)進(jìn)修
- 職業(yè)發(fā)展
- 項(xiàng)目管理
- 求職面試
- 程序員創(chuàng)業(yè)
- JAVA
- .NET
- C/C++
- Ruby
- Delphi
- JavaScript
- PHP
- ASP
- JSP
- HTML
- XML
- 移動開發(fā)
- 開發(fā)工具
- 其他
- 編程開發(fā)
- 數(shù)據(jù)庫
- 操作系統(tǒng)
- 新聞資訊
- 互聯(lián)網(wǎng)
- 非技術(shù)區(qū)
非技術(shù)區(qū)
生活休閑戀愛交友職業(yè)發(fā)展求職面試程序人生
移動開發(fā)
開發(fā)工具DB2
MySqlSybase開發(fā)
JAVA.NETPHPC/C++數(shù)據(jù)庫
SQL ServerOracle互聯(lián)網(wǎng)
運(yùn)營推廣營銷SEO系統(tǒng)
LinuxUnixWindows資訊
動態(tài)產(chǎn)品人物創(chuàng)業(yè)
職場學(xué)習(xí)管理熱搜:
- 局域網(wǎng)
- 繁體字轉(zhuǎn)化為簡體字
- 腳本
- 預(yù)定義變量
- CMS
- 遞歸
- 產(chǎn)品經(jīng)理
- 性能監(jiān)測工具
- Metric_fu靜態(tài)代碼檢查工具
- 泛域名
- Rails3路由
- 飛信應(yīng)答機(jī)器人
- class變量
- 實(shí)例變量
- class實(shí)例變量
- 局域網(wǎng)
- 繁體字轉(zhuǎn)化為簡體字
- 腳本
- 預(yù)定義變量
- CMS
- 遞歸
- 產(chǎn)品經(jīng)理
- 性能監(jiān)測工具
- Metric_fu靜態(tài)代碼檢查工具
- 泛域名
更多>>
您所在的位置: 程序員俱樂部 > 編程開發(fā) > Ruby > Lazy evaluation in Ruby
Lazy evaluation in Ruby
2011-1-2 10:31:01? fuliang? http://fuliang.javaeye.com? 我要評論(0)
- 摘要:1.使用||延遲初始化 deffib(n)@result||=[]returnnif(0..1).include?n@result[n]||=fib(n- 1)+fib(n-1)end2.使用無窮大InifinityRuby可以使用無窮大:irb(main):001:0>Inf=1/0.0=& gt;Infinityirb(main):002:0>(-Inf..Inf).include?(10)=>true使用 Inifinity可以構(gòu)造無窮大小的LazyList:lazyList=
- 標(biāo)簽:Ruby
1.使用||延遲初始化
def fib(n)@result ||= []return n if (0..1).include? n@result[n] ||= fib(n-1) + fib(n-1) end2.使用無窮大Inifinity
Ruby可以使用無窮大: irb(main):001:0> Inf = 1 / 0.0 => Infinity irb(main):002:0> (-Inf..Inf).include?(10) => true
使用Inifinity可以構(gòu)造無窮大小的Lazy List: lazyList = (0..1/0.0) lazyList.take(100).select{|i| i % 2 == 0}lazyList.take(100).select{rand > 0.9}
3.使用Enumerator: fib = Enumerator.new { |y|a = b = 1loop {y << aa, b = b, a + b}} fib.take(10) #=> [1, 1, 2, 3, 5, 8, 13, 21, 34, 55]natural_numbers = Enumerator.new do |yielder|number = 1loop doyielder.yield numbernumber += 1end end#lazy select class Enumeratordef lazy_select(&block)Enumerator.new do |yielder|self.each do |val|yielder.yield(val) if block.call(val)endendend end p natural_numbers.lazy_select {|n| n % 47 == 0}.lazy_select {|n| palindrome_number?(n)}.first(5)
4.使用Fiber: fib = Fiber.new dof1 = f2 = 1loop doFiber.yield f1f1, f2 = f2, f1 + f2end end10.times { puts fib.resume }
參考:
Lazy Enumerators in Ruby
上一篇: Ruby Proc curry化 下一篇: (轉(zhuǎn))項(xiàng)目管理工具 Redmine 安裝試用手記
- 相關(guān)文章
- ·Lazy evaluation in R
- ·Ruby Proc curry化
- ·One line Ruby code
- ·ruby 時間處理
- ·Ruby復(fù)合函數(shù)
- ·Ruby on Rails Tutori
- ·ruby抓取URL內(nèi)容并解析頁面所有UR
- ·ruby各種小腳本(集裝箱)
- ·Ubuntu 10.10 下使用RVM安
- ·windows下安裝ruby1.9.2和
查看所有評論(0)
我要評論發(fā)表評論
用戶名: 匿名
最新文章
(轉(zhuǎn))項(xiàng)目管理..
RVM中文使用..
- ·Safe Alert Request E
- ·mysql隨機(jī)查詢的優(yōu)化 mysql隨機(jī)
- ·顯示html代碼的函數(shù)
- ·php生成某個范圍內(nèi)的隨機(jī)時間
- ·php 繁體字轉(zhuǎn)化為簡體字
- ·php緩存技術(shù)
- ·php實(shí)現(xiàn)無限級分類(遞歸方法)
- ·php 按最大尺寸 等比例縮放圖片
- ·Xdebug的安裝
- ·Xdebug教程
- ·php5.3 apache2.2安裝配置
- ·CakePHP i18n 實(shí)現(xiàn)
- ·ZenCart使用之--每頁顯示商品個數(shù)
- ·ZenCart無法顯示添加的細(xì)節(jié)圖片
- ·互聯(lián)網(wǎng)產(chǎn)品經(jīng)理好書推薦
最新標(biāo)簽
局域網(wǎng) 繁體字轉(zhuǎn)化為簡體字 腳本 預(yù)定義變量 CMS 遞歸 產(chǎn)品經(jīng)理 性能監(jiān)測工具 Metric_fu靜態(tài)代碼檢查工具 泛域名今日熱點(diǎn)
- ·rails 設(shè)置session過期時間
- ·Conexant Systems HD
- ·rails之路
- ·Kindeditor rails3 插件
- ·在Rails項(xiàng)目中導(dǎo)入excel 導(dǎo)出e
- ·Ruby1.9.2 On Rails3.
- ·Rails 異步發(fā)送郵件和測試
- ·MacVim的學(xué)習(xí)使用經(jīng)驗(yàn)
- ·assert_select的用法
- ·一個腳本×關(guān)鍵詞“百度說吧”你懂的
推薦文章
netbean..
Rails3路..
- ·Conexant Systems HD
- ·jstree使用之二 jstree1.0
- ·MacVim的學(xué)習(xí)使用經(jīng)驗(yàn)
- ·使用google map v3添加經(jīng)緯度
- ·netbeans安裝快速調(diào)試器出錯 ne
- ·Rails3教程系列之一:Rails3入
- ·ubuntu10.10 ruby1.9.
- ·在Rails項(xiàng)目中導(dǎo)入excel 導(dǎo)出e
- ·基于Ubuntu Server 10.0
- ·Windows下安裝Ruby on Ra
- ·Kindeditor rails3 插件
- ·Ruby及Ruby On Rails 教
- ·rails 設(shè)置session過期時間
- ·rails3 +jquery-ui+ac
- ·Rails3教程系列之四:Rails3入
- English | 關(guān)于我們 | 誠聘英才 | 聯(lián)系我們 | 網(wǎng)站大事 | 友情鏈接 | 意見反饋 | 網(wǎng)站地圖
- Powered by 程序員俱樂部 程序提供: HugoCMS 2.0 LinezingStat
網(wǎng)站備案:浙ICP備08018443號
轉(zhuǎn)載于:https://www.cnblogs.com/lexus/archive/2011/01/14/1935198.html
總結(jié)
- 上一篇: 【调剂】山东大学控制科学与工程学院生物医
- 下一篇: python读取pcd文件_Python