Ruby 使用 PriorityQueue 时未定义方法
Ruby undefined method while using PriorityQueue
我试图在 ruby 上使用来自 https://github.com/ldonnet/priority_queue 的 priorityQueue,在使用 gem install priority_queue
安装后,出现错误:
./example.rb:5:in `<main>': undefined method `push' for #<PriorityQueue:0x000000015ca200 @queues={}> (NoMethodError)
尝试 运行 README.md 文件的示例时:
#!/usr/bin/ruby
require 'priority_queue'
q = PriorityQueue.new
q.push "node1", 0
q.push "node2", 1
q.min #=> "node1"
q.decrease_priority("node2", -1)
q.pop_min #=> "node2"
q.min #=> "node1"
ruby 版本:ruby 1.9.3p484 (2013-11-22 revision 43786) [x86_64-linux]
谢谢
您链接的 gem 是 PriorityQueue
gem, not the priority_queue
gem 的(分支)。你需要 gem install PriorityQueue
.
我知道您链接到 的存储库在自述文件中说 gem install priority_queue
,但是,这似乎不正确。 priority_queue
gem 来自 a different repository.
我试图在 ruby 上使用来自 https://github.com/ldonnet/priority_queue 的 priorityQueue,在使用 gem install priority_queue
安装后,出现错误:
./example.rb:5:in `<main>': undefined method `push' for #<PriorityQueue:0x000000015ca200 @queues={}> (NoMethodError)
尝试 运行 README.md 文件的示例时:
#!/usr/bin/ruby
require 'priority_queue'
q = PriorityQueue.new
q.push "node1", 0
q.push "node2", 1
q.min #=> "node1"
q.decrease_priority("node2", -1)
q.pop_min #=> "node2"
q.min #=> "node1"
ruby 版本:ruby 1.9.3p484 (2013-11-22 revision 43786) [x86_64-linux]
谢谢
您链接的 gem 是 PriorityQueue
gem, not the priority_queue
gem 的(分支)。你需要 gem install PriorityQueue
.
我知道您链接到 的存储库在自述文件中说 gem install priority_queue
,但是,这似乎不正确。 priority_queue
gem 来自 a different repository.