2011-08-08 129 views
2

我正在尋找Ruby中的範圍或段樹實現。我找不到任何樣品或寶石可用。範圍/段樹紅寶石

有沒有人有示例代碼?

感謝,

回答

1

看起來有一個叫interval-tree,回購是在這裏,https://github.com/gam3/interval-tree和這裏https://github.com/misshie/interval-tree。似乎是後來誰做了這件事,但紅寶石上的寶石指向第一位。很奇怪。

該文檔在回購和其他地方是錯誤的。要使用它,請使用IntervalTree::InclusiveTree.newIntervalTree::ExclusiveTree.new。這沒有記錄在任何奇怪的地方。另外,同樣奇怪的是,不可能向github回購添加問題來解決這個問題。我正在考慮分支並製作一個可以由社區維護的新版本。

不管怎麼說,這裏是你如何使用它:

require "interval-tree" 

itv = [(0...3), (1...4), (3...5),] 
t = IntervalTree::Tree.new(itv) 
p t.search(2) => [0...3, 1...4] 
p t.search(1...3) => [0...3, 1...4, 3...5] 

正如你看到的,也是需要的語句在回購錯誤記錄。真是一團糟。