grosser-algorithms 0.4.0 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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: []