2008-02-17
用Ruby把那个O(1)栈做了一下
刚才没什么事,决定试试用新学的Ruby把那个O(1)栈的问题做了一下。写着是挺快,一口气就下来了,只是代码里带着明显的C++气味。唉,习惯不是一两天就能改的。
代码和C++的差不多长。主要还是不习惯Ruby的思维,再加上那个C++代码中用了很多STL的东西,已经相当精简了。
class Stack class Pair def initialize(first, second) @first=first @second=second end attr_reader :first, :second end def initialize @stack=Array.new @minimum=nil end def push(e) if @stack.empty? then @minimum=e end @stack.push(Pair.new(e,@minimum)) if e<@minimum then @minimum=e end return self end def pop node=@stack.pop @minimum=node.second if @stack.empty? then @minimum=nil end return self end def min return @minimum end end
发表评论
- 浏览: 4269 次
- 性别:

- 来自: 廊坊

- 详细资料
搜索本博客
最近加入圈子
链接
最新评论
-
彻底进入Linux了
Java IDE可以看看NetBeans、Eclipse什么的。类似于Ultra ...
-- by billgui -
彻底进入Linux了
ubuntu确实简单易用,但多媒体方面还是不如win
-- by lveyo -
彻底进入Linux了
root给了10g,对于你80g的硬盘也差不多了, 软件都装home下面的 编 ...
-- by spiritfrog -
在网页中插入数学公式的办 ...
试试看
-- by lix23 -
想不到这段代码居然是错的
孔乙己茴香豆茴字有四种写法
-- by ShiningRay






评论排行榜