grosser-algorithms 0.4.0 → 0.4.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (47) hide show
  1. data/Manifest +45 -0
  2. data/VERSION +1 -0
  3. data/ext/containers/bst/bst.c +249 -0
  4. data/ext/containers/bst/extconf.rb +4 -0
  5. data/grosser-algorithms.gemspec +4 -4
  6. data/rdoc/classes/Algorithms.html +221 -0
  7. data/rdoc/classes/Algorithms/Algorithms.html +115 -0
  8. data/rdoc/classes/Algorithms/Algorithms/Sort.html +569 -0
  9. data/rdoc/classes/Algorithms/Containers.html +162 -0
  10. data/rdoc/classes/Algorithms/Containers/Heap.html +690 -0
  11. data/rdoc/classes/Algorithms/Containers/KDTree.html +195 -0
  12. data/rdoc/classes/Algorithms/Containers/MaxHeap.html +238 -0
  13. data/rdoc/classes/Algorithms/Containers/MinHeap.html +238 -0
  14. data/rdoc/classes/Algorithms/Containers/PriorityQueue.html +456 -0
  15. data/rdoc/classes/Algorithms/Containers/Queue.html +363 -0
  16. data/rdoc/classes/Algorithms/Containers/RubyDeque.html +617 -0
  17. data/rdoc/classes/Algorithms/Containers/RubyRBTreeMap.html +662 -0
  18. data/rdoc/classes/Algorithms/Containers/RubySplayTreeMap.html +623 -0
  19. data/rdoc/classes/Algorithms/Containers/Stack.html +363 -0
  20. data/rdoc/classes/Algorithms/Containers/SuffixArray.html +246 -0
  21. data/rdoc/classes/Algorithms/Containers/Trie.html +555 -0
  22. data/rdoc/classes/Algorithms/Search.html +273 -0
  23. data/rdoc/created.rid +1 -0
  24. data/rdoc/files/History_txt.html +281 -0
  25. data/rdoc/files/README_markdown.html +248 -0
  26. data/rdoc/files/lib/algorithms/search_rb.html +108 -0
  27. data/rdoc/files/lib/algorithms/sort_rb.html +108 -0
  28. data/rdoc/files/lib/algorithms/string_rb.html +115 -0
  29. data/rdoc/files/lib/algorithms_rb.html +252 -0
  30. data/rdoc/files/lib/containers/deque_rb.html +119 -0
  31. data/rdoc/files/lib/containers/heap_rb.html +124 -0
  32. data/rdoc/files/lib/containers/kd_tree_rb.html +135 -0
  33. data/rdoc/files/lib/containers/priority_queue_rb.html +108 -0
  34. data/rdoc/files/lib/containers/queue_rb.html +108 -0
  35. data/rdoc/files/lib/containers/rb_tree_map_rb.html +109 -0
  36. data/rdoc/files/lib/containers/splay_tree_map_rb.html +109 -0
  37. data/rdoc/files/lib/containers/stack_rb.html +108 -0
  38. data/rdoc/files/lib/containers/suffix_array_rb.html +113 -0
  39. data/rdoc/files/lib/containers/trie_rb.html +117 -0
  40. data/rdoc/fr_class_index.html +43 -0
  41. data/rdoc/fr_file_index.html +42 -0
  42. data/rdoc/fr_method_index.html +147 -0
  43. data/rdoc/index.html +24 -0
  44. data/rdoc/rdoc-style.css +208 -0
  45. data/spec/bst_gc_mark_spec.rb +25 -0
  46. data/spec/bst_spec.rb +25 -0
  47. metadata +50 -3
@@ -0,0 +1,25 @@
1
+ # $: << File.join(File.expand_path(File.dirname(__FILE__)), '..', 'lib')
2
+ # require 'algorithms'
3
+ #
4
+ # if defined? Algorithms::Containers::CBst
5
+ # describe "CBst" do
6
+ # it "should mark ruby object references" do
7
+ # anon_key_class = Class.new do
8
+ # attr :value
9
+ # def initialize(x); @value = x; end
10
+ # def <=>(other); value <=> other.value; end
11
+ # end
12
+ # anon_val_class = Class.new
13
+ # @bst = Algorithms::Containers::CBst.new
14
+ # 100.times { |x| @bst.push(anon_key_class.new(x), anon_val_class.new) }
15
+ # # Mark and sweep
16
+ # ObjectSpace.garbage_collect
17
+ # # Check if any instances were swept
18
+ # count = 0
19
+ # ObjectSpace.each_object(anon_key_class) { |x| count += 1 }
20
+ # count.should eql(100)
21
+ # ObjectSpace.each_object(anon_val_class) { |x| count += 1 }
22
+ # count.should eql(200)
23
+ # end
24
+ # end
25
+ # end
@@ -0,0 +1,25 @@
1
+ # $: << File.join(File.expand_path(File.dirname(__FILE__)), '..', 'lib')
2
+ # require "algorithms"
3
+ #
4
+ # begin
5
+ # Containers::CBst
6
+ # describe "binary search tree" do
7
+ # it "should let user push new elements with key" do
8
+ # @bst = Containers::CBst.new
9
+ # 100.times { |x| @bst.push(x, "hello : #{x}") }
10
+ # @bst.size.should eql(100)
11
+ # end
12
+ #
13
+ # it "should allow users to delete elements" do
14
+ # @bst = Containers::CBst.new
15
+ # @bst.push(10, "hello world")
16
+ # @bst.push(11, "hello world")
17
+ # @bst.delete(11)
18
+ # @bst.size.should eql(1)
19
+ # @bst.delete(10)
20
+ # @bst.size.should eql(0)
21
+ # end
22
+ #
23
+ # end
24
+ # rescue Exception
25
+ # end
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 4
8
- - 0
9
- version: 0.4.0
8
+ - 1
9
+ version: 0.4.1
10
10
  platform: ruby
11
11
  authors:
12
12
  - Kanwei Li
@@ -24,6 +24,7 @@ executables: []
24
24
 
25
25
  extensions:
26
26
  - ext/algorithms/string/extconf.rb
27
+ - ext/containers/bst/extconf.rb
27
28
  - ext/containers/deque/extconf.rb
28
29
  - ext/containers/rbtree_map/extconf.rb
29
30
  - ext/containers/splaytree_map/extconf.rb
@@ -31,6 +32,8 @@ extra_rdoc_files:
31
32
  - README.markdown
32
33
  - ext/algorithms/string/extconf.rb
33
34
  - ext/algorithms/string/string.c
35
+ - ext/containers/bst/bst.c
36
+ - ext/containers/bst/extconf.rb
34
37
  - ext/containers/deque/deque.c
35
38
  - ext/containers/deque/extconf.rb
36
39
  - ext/containers/rbtree_map/extconf.rb
@@ -56,18 +59,22 @@ files:
56
59
  - Manifest
57
60
  - README.markdown
58
61
  - Rakefile
62
+ - VERSION
59
63
  - algorithms.gemspec
60
64
  - benchmarks/deque.rb
61
65
  - benchmarks/sorts.rb
62
66
  - benchmarks/treemaps.rb
63
67
  - ext/algorithms/string/extconf.rb
64
68
  - ext/algorithms/string/string.c
69
+ - ext/containers/bst/bst.c
70
+ - ext/containers/bst/extconf.rb
65
71
  - ext/containers/deque/deque.c
66
72
  - ext/containers/deque/extconf.rb
67
73
  - ext/containers/rbtree_map/extconf.rb
68
74
  - ext/containers/rbtree_map/rbtree.c
69
75
  - ext/containers/splaytree_map/extconf.rb
70
76
  - ext/containers/splaytree_map/splaytree.c
77
+ - grosser-algorithms.gemspec
71
78
  - lib/algorithms.rb
72
79
  - lib/algorithms/search.rb
73
80
  - lib/algorithms/sort.rb
@@ -82,6 +89,47 @@ files:
82
89
  - lib/containers/stack.rb
83
90
  - lib/containers/suffix_array.rb
84
91
  - lib/containers/trie.rb
92
+ - rdoc/classes/Algorithms.html
93
+ - rdoc/classes/Algorithms/Algorithms.html
94
+ - rdoc/classes/Algorithms/Algorithms/Sort.html
95
+ - rdoc/classes/Algorithms/Containers.html
96
+ - rdoc/classes/Algorithms/Containers/Heap.html
97
+ - rdoc/classes/Algorithms/Containers/KDTree.html
98
+ - rdoc/classes/Algorithms/Containers/MaxHeap.html
99
+ - rdoc/classes/Algorithms/Containers/MinHeap.html
100
+ - rdoc/classes/Algorithms/Containers/PriorityQueue.html
101
+ - rdoc/classes/Algorithms/Containers/Queue.html
102
+ - rdoc/classes/Algorithms/Containers/RubyDeque.html
103
+ - rdoc/classes/Algorithms/Containers/RubyRBTreeMap.html
104
+ - rdoc/classes/Algorithms/Containers/RubySplayTreeMap.html
105
+ - rdoc/classes/Algorithms/Containers/Stack.html
106
+ - rdoc/classes/Algorithms/Containers/SuffixArray.html
107
+ - rdoc/classes/Algorithms/Containers/Trie.html
108
+ - rdoc/classes/Algorithms/Search.html
109
+ - rdoc/created.rid
110
+ - rdoc/files/History_txt.html
111
+ - rdoc/files/README_markdown.html
112
+ - rdoc/files/lib/algorithms/search_rb.html
113
+ - rdoc/files/lib/algorithms/sort_rb.html
114
+ - rdoc/files/lib/algorithms/string_rb.html
115
+ - rdoc/files/lib/algorithms_rb.html
116
+ - rdoc/files/lib/containers/deque_rb.html
117
+ - rdoc/files/lib/containers/heap_rb.html
118
+ - rdoc/files/lib/containers/kd_tree_rb.html
119
+ - rdoc/files/lib/containers/priority_queue_rb.html
120
+ - rdoc/files/lib/containers/queue_rb.html
121
+ - rdoc/files/lib/containers/rb_tree_map_rb.html
122
+ - rdoc/files/lib/containers/splay_tree_map_rb.html
123
+ - rdoc/files/lib/containers/stack_rb.html
124
+ - rdoc/files/lib/containers/suffix_array_rb.html
125
+ - rdoc/files/lib/containers/trie_rb.html
126
+ - rdoc/fr_class_index.html
127
+ - rdoc/fr_file_index.html
128
+ - rdoc/fr_method_index.html
129
+ - rdoc/index.html
130
+ - rdoc/rdoc-style.css
131
+ - spec/bst_gc_mark_spec.rb
132
+ - spec/bst_spec.rb
85
133
  - spec/deque_gc_mark_spec.rb
86
134
  - spec/deque_spec.rb
87
135
  - spec/heap_spec.rb
@@ -99,7 +147,6 @@ files:
99
147
  - spec/string_spec.rb
100
148
  - spec/suffix_array_spec.rb
101
149
  - spec/trie_spec.rb
102
- - grosser-algorithms.gemspec
103
150
  has_rdoc: true
104
151
  homepage: http://rubyforge.org/projects/algorithms/
105
152
  licenses: []