algorithm_selector 0.1.1 → 0.1.2

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a981d20084dca80e4760e858f1233ff4f3a0e394
4
- data.tar.gz: 61a39abe1b79911178a190d82a246d81cdbf599e
3
+ metadata.gz: c92f24acb4d6a2fafd53e85e8175d4df16852bad
4
+ data.tar.gz: ecb1b1b2af1a69e09694f0203d47902a58e16bba
5
5
  SHA512:
6
- metadata.gz: d599d67a51d13dd4e21719b08961b3432792bcabc2fbaf54955378ca1709f85f6b016792c825c6f8eaa68d1439506acfe51bcefda55b5ce7f68a0652c5717e97
7
- data.tar.gz: bb215af0fa14d30204743baf7e8ac6fdb426f568c397f09a41b6e7b089d3e62ef7dd24f96581d29e6e92c4e542f5ab87a14cbacac07512748425d37d067a8db9
6
+ metadata.gz: 36a078f0b02d232a1ee251ae9e55c94448f503f6fc2d5bcd72b042cbc3eab1db91d585fcfdaf96e0b312ca1071f579e2bc7d9a15c3ebd445ee92ada0cf2f8fab
7
+ data.tar.gz: 2fe851dd30394dc7f9bff8e7c5b78b14ef9afb25931aa0500c0cd66d63cdde907ee21b68efa4152c04049bb065c4bd8f3c58b57ab9358d7c1dc31cbe7cc10cbb
data/.gitignore CHANGED
@@ -1 +1,2 @@
1
1
  algorithm_selector-0.1.0.gem
2
+ algorithm_selector-0.1.1.gem
data/.yardoc/checksums CHANGED
@@ -1,2 +1,2 @@
1
- lib/algorithm_selector.rb 036d45e94c0248ea6788f24592c1ccefebbae09f
2
- lib/algorithm_selector/version.rb 47fa3df616f7831e30aeea2fba41ad47bf028155
1
+ lib/algorithm_selector.rb 300cdf69ec09250719da398de917f15df18d8761
2
+ lib/algorithm_selector/version.rb 87587aa036583321d3bbdda4db673036572e46a9
Binary file
data/README.md CHANGED
@@ -1,9 +1,151 @@
1
- # AlgorithmSelector
1
+ # algorithm_selector [![Gem Version](https://badge.fury.io/rb/algorithm_selector.svg)](https://badge.fury.io/rb/algorithm_selector)
2
+
3
+ * [Live](https://rubygems.org/gems/algorithm_selector)
4
+ * [Documentation](http://www.rubydoc.info/gems/algorithm_selector)
2
5
 
3
6
  ## Description
4
7
 
5
- Gem for analyzing and using the best data structures or algorithms for your particular
6
- data set. Written by Joseph Bui.
8
+ Calculates algorithms and data structures for sorting and searching. Selects best one to use for particular data set.
9
+
10
+ Additionally, data structures can be used for own purposes. All data structures have the ability to insert and search. Will add deletion in the future.
11
+
12
+ Written by Joseph Bui.
13
+ ### Currently supports the following algorithms and data structures:
14
+ * Sorting (`"sort"`)
15
+ * Bubble Sort (`"bubble_sort"`)
16
+ * Insertion Sort (`"insertion_sort"`)
17
+ * Selection Sort (`"selection_sort"`)
18
+ * Merge Sort (`"merge_sort"`)
19
+ * Quick Sort(`"quick_sort"`)
20
+ * Searching (`"search"`)
21
+ * Stack (`"stack"`)
22
+ * Queue (`"queue"`)
23
+ * Singly-Linked List (`"linked_list"`)
24
+ * Binary Search Tree (`"binary_tree"`)
25
+
26
+ ### Parameters
27
+
28
+ * `action` is the string of the action, can be `"sort"` or `"search"`
29
+ * `data_set` has to be in array format
30
+ * `trials` is number of test trials (optional, default = 1)
31
+ * `target` is element user wants to search (unnecessary for `sort`, default = null)
32
+ * `algorithm` is the string of the algorithm or data structure
33
+
34
+ ### Methods
35
+
36
+ * `all(action, data_set, trials, target)`
37
+ * Returns the times for each algorithm
38
+ * Example:
39
+ ```ruby
40
+ AlgorithmSelector.all("sort", [2,1,4,3], 1000)
41
+ AlgorithmSelector.all("search", [2,1,4,3], 1000, 4)
42
+ ```
43
+ * `best(action, data_set, trials, target)`
44
+ * Returns the algorithm with the best time
45
+ * Example:
46
+ ```ruby
47
+ AlgorithmSelector.best("sort", [2,1,4,3], 1000)
48
+ AlgorithmSelector.best("search", [2,1,4,3], 1000, 4)
49
+ ```
50
+
51
+ * `analyze(action, data_set, algorithm, trials, target)`
52
+ * Returns time for specified algorithm or data structure
53
+ * Example:
54
+ ```ruby
55
+ AlgorithmSelector.analyze("sort", [2,1,4,3], "merge_sort", 1000)
56
+ AlgorithmSelector.analyze("search", [2,1,4,3], "linked_list", 1000, 4)
57
+ ```
58
+
59
+ * `compare(action, data_set, first_algorithm, second_algorithm, trials, target)`
60
+ * Returns the times of two specified algorithms for comparison
61
+ * Example:
62
+ ```ruby
63
+ AlgorithmSelector.compare("sort", [2,1,4,3], "merge_sort", "quick_sort", 1000)
64
+ AlgorithmSelector.compare("search", [2,1,4,3], "stack", "linked_list", 1000, 4)
65
+ ```
66
+
67
+ * `sort(data_set, algorithm)`
68
+ * Returns sorted array of specified sorting algorithm
69
+ * Example:
70
+ ```ruby
71
+ AlgorithmSelector.compare([2,1,4,3], "bubble_sort")
72
+ ```
73
+
74
+ ### Data Structures
75
+
76
+ #### Stack
77
+ * Initialize
78
+ ```ruby
79
+ size = 10
80
+ stack = Stack.new(size)
81
+ ```
82
+ * Insertion
83
+ ```ruby
84
+ # returns nil
85
+ value = 6
86
+ stack.push(value)
87
+ ```
88
+ * Search
89
+ ```ruby
90
+ # returns true if found, else returns false
91
+ target = 4
92
+ stack.search(target)
93
+ ```
94
+
95
+ #### Queue
96
+ * Initialize
97
+ ```ruby
98
+ size = 10
99
+ queue = Queue.new(size)
100
+ ```
101
+ * Insertion
102
+ ```ruby
103
+ # returns nil
104
+ value = 6
105
+ queue.enqueue(value)
106
+ ```
107
+ * Search
108
+ ```ruby
109
+ # returns true if found, else returns false
110
+ target = 4
111
+ queue.search(target)
112
+ ```
113
+
114
+ #### Linked List
115
+ * Initialize
116
+ ```ruby
117
+ linked_list = LinkedList.new
118
+ ```
119
+ * Insertion
120
+ ```ruby
121
+ # returns nil
122
+ value = 6
123
+ linked_list.insert(value)
124
+ ```
125
+ * Search
126
+ ```ruby
127
+ # returns true if found, else returns false
128
+ target = 4
129
+ linked_list.search(target)
130
+ ```
131
+
132
+ #### Binary Search Tree
133
+ * Initialize
134
+ ```ruby
135
+ binary_tree = BinaryTree.new
136
+ ```
137
+ * Insertion
138
+ ```ruby
139
+ # returns nil
140
+ value = 6
141
+ binary_tree.insert(value)
142
+ ```
143
+ * Search
144
+ ```ruby
145
+ # returns true if found, else returns false
146
+ target = 4
147
+ binary_tree.search(target)
148
+ ```
7
149
 
8
150
  ## Installation
9
151
 
@@ -27,37 +169,6 @@ Require the Gem:
27
169
 
28
170
  $ require 'algorithm_selector'
29
171
 
30
- ### Features
31
-
32
- * See all times of algorithms for data set
33
- ```ruby
34
- # For Sorting algorithms
35
- all(type, array, number_of_trials)
36
-
37
- # example
38
- # => {:sorted=>[1, 2, 3, 4, 5],
39
- # :results=>
40
- # {:bubble_sort=>1.329500000000018e-06,
41
- # :insertion_sort=>1.3745000000000046e-06,
42
- # :selection_sort=>5.778000000000015e-06,
43
- # :merge_sort=>6.3820000000000526e-06,
44
- # :quick_sort=>5.709000000000024e-06}}
45
-
46
- ####################################
47
-
48
- # For Searching algorithms
49
- all(type, array, number_of_trials, target)
50
-
51
- # example
52
- # all("search", [5,4,3,2,1], 2000, 3)
53
- # => {:found=>true,
54
- # :results=>
55
- # {:stack=>6.156000000000004e-06,
56
- # :queue=>5.315499999999899e-06,
57
- # :linked_list=>1.050999999999992e-06,
58
- # :binary_tree=>8.534999999999816e-07}}
59
-
60
- ```
61
172
 
62
173
  ## Contributing
63
174
 
@@ -10,8 +10,8 @@ Gem::Specification.new do |spec|
10
10
  spec.email = ["jnvbui@gmail.com"]
11
11
 
12
12
  spec.summary = %q{Takes a desired action and data set, returns best algorithm.}
13
- spec.description = %q{A gem for determing the most efficient algorithm or data structure to use for a particular data set.
14
- Currently supports the following data structures and algorithms: Bubble Sort, Insertion Sort, Selection Sort, Merge Sort, Quick Sort, Stack, Queue, Linked List, Binary Search Tree}
13
+ spec.description = %q{Calculates algorithms and data structures for sorting and searching. Selects best one to use for particular data set.
14
+ Currently supports: Bubble Sort, Insertion Sort, Selection Sort, Merge Sort, Quick Sort, Stack, Queue, Linked List, Binary Search Tree}
15
15
  spec.homepage = "https://github.com/jnvbui/algorithm_selector"
16
16
  spec.license = "MIT"
17
17
 
@@ -97,14 +97,25 @@
97
97
 
98
98
  </div>
99
99
 
100
+ <h2>Overview</h2><div class="docstring">
101
+ <div class="discussion">
102
+
103
+ <p>algorithm-selector library; 5 methods (all, best, analyze, compare, sort)</p>
104
+
100
105
 
106
+ </div>
107
+ </div>
108
+ <div class="tags">
109
+
110
+
111
+ </div>
101
112
  <h2>Constant Summary</h2>
102
113
  <dl class="constants">
103
114
 
104
115
  <dt id="VERSION-constant" class="">VERSION =
105
116
 
106
117
  </dt>
107
- <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>0.1.0</span><span class='tstring_end'>&quot;</span></span></pre></dd>
118
+ <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>0.1.1</span><span class='tstring_end'>&quot;</span></span></pre></dd>
108
119
 
109
120
  </dl>
110
121
 
@@ -125,7 +136,7 @@
125
136
  <li class="public ">
126
137
  <span class="summary_signature">
127
138
 
128
- <a href="#all-instance_method" title="#all (instance method)">#<strong>all</strong>(type, array, num_tests = 1, target = nil) &#x21d2; Object </a>
139
+ <a href="#all-instance_method" title="#all (instance method)">#<strong>all</strong>(action, data_set, trials = 1, target = nil) &#x21d2; Object </a>
129
140
 
130
141
 
131
142
 
@@ -140,7 +151,7 @@
140
151
 
141
152
 
142
153
  <span class="summary_desc"><div class='inline'>
143
- <p>get all algorithms.</p>
154
+ <p>Returns the times for each algorithm.</p>
144
155
  </div></span>
145
156
 
146
157
  </li>
@@ -149,7 +160,7 @@
149
160
  <li class="public ">
150
161
  <span class="summary_signature">
151
162
 
152
- <a href="#analyze-instance_method" title="#analyze (instance method)">#<strong>analyze</strong>(type, array, algorithm_name, num_tests = 1, target = nil) &#x21d2; Object </a>
163
+ <a href="#analyze-instance_method" title="#analyze (instance method)">#<strong>analyze</strong>(action, data_set, algorithm, trials = 1, target = nil) &#x21d2; Object </a>
153
164
 
154
165
 
155
166
 
@@ -164,7 +175,7 @@
164
175
 
165
176
 
166
177
  <span class="summary_desc"><div class='inline'>
167
- <p>get one algorithm by name.</p>
178
+ <p>Returns time for specified algorithm or data structure.</p>
168
179
  </div></span>
169
180
 
170
181
  </li>
@@ -173,7 +184,7 @@
173
184
  <li class="public ">
174
185
  <span class="summary_signature">
175
186
 
176
- <a href="#best-instance_method" title="#best (instance method)">#<strong>best</strong>(type, array, num_tests = 1, target = nil) &#x21d2; Object </a>
187
+ <a href="#best-instance_method" title="#best (instance method)">#<strong>best</strong>(action, data_set, trials = 1, target = nil) &#x21d2; Object </a>
177
188
 
178
189
 
179
190
 
@@ -188,7 +199,7 @@
188
199
 
189
200
 
190
201
  <span class="summary_desc"><div class='inline'>
191
- <p>get best algorithm.</p>
202
+ <p>Returns the algorithm with the best time.</p>
192
203
  </div></span>
193
204
 
194
205
  </li>
@@ -197,7 +208,7 @@
197
208
  <li class="public ">
198
209
  <span class="summary_signature">
199
210
 
200
- <a href="#compare-instance_method" title="#compare (instance method)">#<strong>compare</strong>(type, array, first_algorithm_name, second_algorithm_name, num_tests = 1, target = nil) &#x21d2; Object </a>
211
+ <a href="#compare-instance_method" title="#compare (instance method)">#<strong>compare</strong>(action, data_set, first_algorithm, second_algorithm, trials = 1, target = nil) &#x21d2; Object </a>
201
212
 
202
213
 
203
214
 
@@ -212,7 +223,7 @@
212
223
 
213
224
 
214
225
  <span class="summary_desc"><div class='inline'>
215
- <p>compare two algorithms.</p>
226
+ <p>Returns the times of two specified algorithms for comparison.</p>
216
227
  </div></span>
217
228
 
218
229
  </li>
@@ -221,7 +232,7 @@
221
232
  <li class="public ">
222
233
  <span class="summary_signature">
223
234
 
224
- <a href="#sort-instance_method" title="#sort (instance method)">#<strong>sort</strong>(array, algorithm_name) &#x21d2; Object </a>
235
+ <a href="#sort-instance_method" title="#sort (instance method)">#<strong>sort</strong>(data_set, algorithm) &#x21d2; Object </a>
225
236
 
226
237
 
227
238
 
@@ -236,7 +247,7 @@
236
247
 
237
248
 
238
249
  <span class="summary_desc"><div class='inline'>
239
- <p>call sort algorithm method.</p>
250
+ <p>Returns sorted data_set of specified sorting algorithm.</p>
240
251
  </div></span>
241
252
 
242
253
  </li>
@@ -254,7 +265,7 @@
254
265
  <div class="method_details first">
255
266
  <h3 class="signature first" id="all-instance_method">
256
267
 
257
- #<strong>all</strong>(type, array, num_tests = 1, target = nil) &#x21d2; <tt>Object</tt>
268
+ #<strong>all</strong>(action, data_set, trials = 1, target = nil) &#x21d2; <tt>Object</tt>
258
269
 
259
270
 
260
271
 
@@ -263,7 +274,7 @@
263
274
  </h3><div class="docstring">
264
275
  <div class="discussion">
265
276
 
266
- <p>get all algorithms</p>
277
+ <p>Returns the times for each algorithm</p>
267
278
 
268
279
 
269
280
  </div>
@@ -277,22 +288,22 @@
277
288
  <pre class="lines">
278
289
 
279
290
 
280
- 7
281
291
  8
282
292
  9
283
293
  10
284
294
  11
285
295
  12
286
- 13</pre>
296
+ 13
297
+ 14</pre>
287
298
  </td>
288
299
  <td>
289
- <pre class="code"><span class="info file"># File 'lib/algorithm_selector.rb', line 7</span>
300
+ <pre class="code"><span class="info file"># File 'lib/algorithm_selector.rb', line 8</span>
290
301
 
291
- <span class='kw'>def</span> <span class='id identifier rubyid_all'>all</span><span class='lparen'>(</span><span class='id identifier rubyid_type'>type</span><span class='comma'>,</span> <span class='id identifier rubyid_array'>array</span><span class='comma'>,</span> <span class='id identifier rubyid_num_tests'>num_tests</span><span class='op'>=</span><span class='int'>1</span><span class='comma'>,</span> <span class='id identifier rubyid_target'>target</span><span class='op'>=</span><span class='kw'>nil</span><span class='rparen'>)</span>
292
- <span class='kw'>if</span> <span class='id identifier rubyid_type'>type</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>sort</span><span class='tstring_end'>&quot;</span></span>
293
- <span class='const'>Sorts</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='period'>.</span><span class='id identifier rubyid_all'>all</span><span class='lparen'>(</span><span class='id identifier rubyid_array'>array</span><span class='comma'>,</span> <span class='id identifier rubyid_num_tests'>num_tests</span><span class='rparen'>)</span>
294
- <span class='kw'>elsif</span> <span class='id identifier rubyid_type'>type</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>search</span><span class='tstring_end'>&quot;</span></span>
295
- <span class='const'>Searches</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='period'>.</span><span class='id identifier rubyid_all'>all</span><span class='lparen'>(</span><span class='id identifier rubyid_array'>array</span><span class='comma'>,</span> <span class='id identifier rubyid_num_tests'>num_tests</span><span class='comma'>,</span> <span class='id identifier rubyid_target'>target</span><span class='rparen'>)</span>
302
+ <span class='kw'>def</span> <span class='id identifier rubyid_all'>all</span><span class='lparen'>(</span><span class='id identifier rubyid_action'>action</span><span class='comma'>,</span> <span class='id identifier rubyid_data_set'>data_set</span><span class='comma'>,</span> <span class='id identifier rubyid_trials'>trials</span><span class='op'>=</span><span class='int'>1</span><span class='comma'>,</span> <span class='id identifier rubyid_target'>target</span><span class='op'>=</span><span class='kw'>nil</span><span class='rparen'>)</span>
303
+ <span class='kw'>if</span> <span class='id identifier rubyid_action'>action</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>sort</span><span class='tstring_end'>&quot;</span></span>
304
+ <span class='const'>Sorts</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='period'>.</span><span class='id identifier rubyid_all'>all</span><span class='lparen'>(</span><span class='id identifier rubyid_data_set'>data_set</span><span class='comma'>,</span> <span class='id identifier rubyid_trials'>trials</span><span class='rparen'>)</span>
305
+ <span class='kw'>elsif</span> <span class='id identifier rubyid_action'>action</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>search</span><span class='tstring_end'>&quot;</span></span>
306
+ <span class='const'>Searches</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='period'>.</span><span class='id identifier rubyid_all'>all</span><span class='lparen'>(</span><span class='id identifier rubyid_data_set'>data_set</span><span class='comma'>,</span> <span class='id identifier rubyid_trials'>trials</span><span class='comma'>,</span> <span class='id identifier rubyid_target'>target</span><span class='rparen'>)</span>
296
307
  <span class='kw'>end</span>
297
308
  <span class='kw'>end</span></pre>
298
309
  </td>
@@ -303,7 +314,7 @@
303
314
  <div class="method_details ">
304
315
  <h3 class="signature " id="analyze-instance_method">
305
316
 
306
- #<strong>analyze</strong>(type, array, algorithm_name, num_tests = 1, target = nil) &#x21d2; <tt>Object</tt>
317
+ #<strong>analyze</strong>(action, data_set, algorithm, trials = 1, target = nil) &#x21d2; <tt>Object</tt>
307
318
 
308
319
 
309
320
 
@@ -312,7 +323,7 @@
312
323
  </h3><div class="docstring">
313
324
  <div class="discussion">
314
325
 
315
- <p>get one algorithm by name</p>
326
+ <p>Returns time for specified algorithm or data structure</p>
316
327
 
317
328
 
318
329
  </div>
@@ -326,22 +337,22 @@
326
337
  <pre class="lines">
327
338
 
328
339
 
329
- 25
330
340
  26
331
341
  27
332
342
  28
333
343
  29
334
344
  30
335
- 31</pre>
345
+ 31
346
+ 32</pre>
336
347
  </td>
337
348
  <td>
338
- <pre class="code"><span class="info file"># File 'lib/algorithm_selector.rb', line 25</span>
349
+ <pre class="code"><span class="info file"># File 'lib/algorithm_selector.rb', line 26</span>
339
350
 
340
- <span class='kw'>def</span> <span class='id identifier rubyid_analyze'>analyze</span><span class='lparen'>(</span><span class='id identifier rubyid_type'>type</span><span class='comma'>,</span> <span class='id identifier rubyid_array'>array</span><span class='comma'>,</span> <span class='id identifier rubyid_algorithm_name'>algorithm_name</span><span class='comma'>,</span> <span class='id identifier rubyid_num_tests'>num_tests</span><span class='op'>=</span><span class='int'>1</span><span class='comma'>,</span> <span class='id identifier rubyid_target'>target</span><span class='op'>=</span><span class='kw'>nil</span><span class='rparen'>)</span>
341
- <span class='kw'>if</span> <span class='id identifier rubyid_type'>type</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>sort</span><span class='tstring_end'>&quot;</span></span>
342
- <span class='const'>Sorts</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='period'>.</span><span class='id identifier rubyid_analyze'>analyze</span><span class='lparen'>(</span><span class='id identifier rubyid_array'>array</span><span class='comma'>,</span> <span class='id identifier rubyid_algorithm_name'>algorithm_name</span><span class='comma'>,</span> <span class='id identifier rubyid_num_tests'>num_tests</span><span class='rparen'>)</span>
343
- <span class='kw'>elsif</span> <span class='id identifier rubyid_type'>type</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>search</span><span class='tstring_end'>&quot;</span></span>
344
- <span class='const'>Searches</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='period'>.</span><span class='id identifier rubyid_analyze'>analyze</span><span class='lparen'>(</span><span class='id identifier rubyid_array'>array</span><span class='comma'>,</span> <span class='id identifier rubyid_algorithm_name'>algorithm_name</span><span class='comma'>,</span> <span class='id identifier rubyid_num_tests'>num_tests</span><span class='comma'>,</span> <span class='id identifier rubyid_target'>target</span><span class='rparen'>)</span>
351
+ <span class='kw'>def</span> <span class='id identifier rubyid_analyze'>analyze</span><span class='lparen'>(</span><span class='id identifier rubyid_action'>action</span><span class='comma'>,</span> <span class='id identifier rubyid_data_set'>data_set</span><span class='comma'>,</span> <span class='id identifier rubyid_algorithm'>algorithm</span><span class='comma'>,</span> <span class='id identifier rubyid_trials'>trials</span><span class='op'>=</span><span class='int'>1</span><span class='comma'>,</span> <span class='id identifier rubyid_target'>target</span><span class='op'>=</span><span class='kw'>nil</span><span class='rparen'>)</span>
352
+ <span class='kw'>if</span> <span class='id identifier rubyid_action'>action</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>sort</span><span class='tstring_end'>&quot;</span></span>
353
+ <span class='const'>Sorts</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='period'>.</span><span class='id identifier rubyid_analyze'>analyze</span><span class='lparen'>(</span><span class='id identifier rubyid_data_set'>data_set</span><span class='comma'>,</span> <span class='id identifier rubyid_algorithm'>algorithm</span><span class='comma'>,</span> <span class='id identifier rubyid_trials'>trials</span><span class='rparen'>)</span>
354
+ <span class='kw'>elsif</span> <span class='id identifier rubyid_action'>action</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>search</span><span class='tstring_end'>&quot;</span></span>
355
+ <span class='const'>Searches</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='period'>.</span><span class='id identifier rubyid_analyze'>analyze</span><span class='lparen'>(</span><span class='id identifier rubyid_data_set'>data_set</span><span class='comma'>,</span> <span class='id identifier rubyid_algorithm'>algorithm</span><span class='comma'>,</span> <span class='id identifier rubyid_trials'>trials</span><span class='comma'>,</span> <span class='id identifier rubyid_target'>target</span><span class='rparen'>)</span>
345
356
  <span class='kw'>end</span>
346
357
  <span class='kw'>end</span></pre>
347
358
  </td>
@@ -352,7 +363,7 @@
352
363
  <div class="method_details ">
353
364
  <h3 class="signature " id="best-instance_method">
354
365
 
355
- #<strong>best</strong>(type, array, num_tests = 1, target = nil) &#x21d2; <tt>Object</tt>
366
+ #<strong>best</strong>(action, data_set, trials = 1, target = nil) &#x21d2; <tt>Object</tt>
356
367
 
357
368
 
358
369
 
@@ -361,7 +372,7 @@
361
372
  </h3><div class="docstring">
362
373
  <div class="discussion">
363
374
 
364
- <p>get best algorithm</p>
375
+ <p>Returns the algorithm with the best time</p>
365
376
 
366
377
 
367
378
  </div>
@@ -375,22 +386,22 @@
375
386
  <pre class="lines">
376
387
 
377
388
 
378
- 16
379
389
  17
380
390
  18
381
391
  19
382
392
  20
383
393
  21
384
- 22</pre>
394
+ 22
395
+ 23</pre>
385
396
  </td>
386
397
  <td>
387
- <pre class="code"><span class="info file"># File 'lib/algorithm_selector.rb', line 16</span>
398
+ <pre class="code"><span class="info file"># File 'lib/algorithm_selector.rb', line 17</span>
388
399
 
389
- <span class='kw'>def</span> <span class='id identifier rubyid_best'>best</span><span class='lparen'>(</span><span class='id identifier rubyid_type'>type</span><span class='comma'>,</span> <span class='id identifier rubyid_array'>array</span><span class='comma'>,</span> <span class='id identifier rubyid_num_tests'>num_tests</span><span class='op'>=</span><span class='int'>1</span><span class='comma'>,</span> <span class='id identifier rubyid_target'>target</span><span class='op'>=</span><span class='kw'>nil</span><span class='rparen'>)</span>
390
- <span class='kw'>if</span> <span class='id identifier rubyid_type'>type</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>sort</span><span class='tstring_end'>&quot;</span></span>
391
- <span class='const'>Sorts</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='period'>.</span><span class='id identifier rubyid_best'>best</span><span class='lparen'>(</span><span class='id identifier rubyid_array'>array</span><span class='comma'>,</span> <span class='id identifier rubyid_num_tests'>num_tests</span><span class='rparen'>)</span>
392
- <span class='kw'>elsif</span> <span class='id identifier rubyid_type'>type</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>search</span><span class='tstring_end'>&quot;</span></span>
393
- <span class='const'>Searches</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='period'>.</span><span class='id identifier rubyid_best'>best</span><span class='lparen'>(</span><span class='id identifier rubyid_array'>array</span><span class='comma'>,</span> <span class='id identifier rubyid_num_tests'>num_tests</span><span class='comma'>,</span> <span class='id identifier rubyid_target'>target</span><span class='rparen'>)</span>
400
+ <span class='kw'>def</span> <span class='id identifier rubyid_best'>best</span><span class='lparen'>(</span><span class='id identifier rubyid_action'>action</span><span class='comma'>,</span> <span class='id identifier rubyid_data_set'>data_set</span><span class='comma'>,</span> <span class='id identifier rubyid_trials'>trials</span><span class='op'>=</span><span class='int'>1</span><span class='comma'>,</span> <span class='id identifier rubyid_target'>target</span><span class='op'>=</span><span class='kw'>nil</span><span class='rparen'>)</span>
401
+ <span class='kw'>if</span> <span class='id identifier rubyid_action'>action</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>sort</span><span class='tstring_end'>&quot;</span></span>
402
+ <span class='const'>Sorts</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='period'>.</span><span class='id identifier rubyid_best'>best</span><span class='lparen'>(</span><span class='id identifier rubyid_data_set'>data_set</span><span class='comma'>,</span> <span class='id identifier rubyid_trials'>trials</span><span class='rparen'>)</span>
403
+ <span class='kw'>elsif</span> <span class='id identifier rubyid_action'>action</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>search</span><span class='tstring_end'>&quot;</span></span>
404
+ <span class='const'>Searches</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='period'>.</span><span class='id identifier rubyid_best'>best</span><span class='lparen'>(</span><span class='id identifier rubyid_data_set'>data_set</span><span class='comma'>,</span> <span class='id identifier rubyid_trials'>trials</span><span class='comma'>,</span> <span class='id identifier rubyid_target'>target</span><span class='rparen'>)</span>
394
405
  <span class='kw'>end</span>
395
406
  <span class='kw'>end</span></pre>
396
407
  </td>
@@ -401,7 +412,7 @@
401
412
  <div class="method_details ">
402
413
  <h3 class="signature " id="compare-instance_method">
403
414
 
404
- #<strong>compare</strong>(type, array, first_algorithm_name, second_algorithm_name, num_tests = 1, target = nil) &#x21d2; <tt>Object</tt>
415
+ #<strong>compare</strong>(action, data_set, first_algorithm, second_algorithm, trials = 1, target = nil) &#x21d2; <tt>Object</tt>
405
416
 
406
417
 
407
418
 
@@ -410,7 +421,7 @@
410
421
  </h3><div class="docstring">
411
422
  <div class="discussion">
412
423
 
413
- <p>compare two algorithms</p>
424
+ <p>Returns the times of two specified algorithms for comparison</p>
414
425
 
415
426
 
416
427
  </div>
@@ -424,22 +435,22 @@
424
435
  <pre class="lines">
425
436
 
426
437
 
427
- 34
428
438
  35
429
439
  36
430
440
  37
431
441
  38
432
442
  39
433
- 40</pre>
443
+ 40
444
+ 41</pre>
434
445
  </td>
435
446
  <td>
436
- <pre class="code"><span class="info file"># File 'lib/algorithm_selector.rb', line 34</span>
447
+ <pre class="code"><span class="info file"># File 'lib/algorithm_selector.rb', line 35</span>
437
448
 
438
- <span class='kw'>def</span> <span class='id identifier rubyid_compare'>compare</span><span class='lparen'>(</span><span class='id identifier rubyid_type'>type</span><span class='comma'>,</span> <span class='id identifier rubyid_array'>array</span><span class='comma'>,</span> <span class='id identifier rubyid_first_algorithm_name'>first_algorithm_name</span><span class='comma'>,</span> <span class='id identifier rubyid_second_algorithm_name'>second_algorithm_name</span><span class='comma'>,</span> <span class='id identifier rubyid_num_tests'>num_tests</span><span class='op'>=</span><span class='int'>1</span><span class='comma'>,</span> <span class='id identifier rubyid_target'>target</span><span class='op'>=</span><span class='kw'>nil</span><span class='rparen'>)</span>
439
- <span class='kw'>if</span> <span class='id identifier rubyid_type'>type</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>sort</span><span class='tstring_end'>&quot;</span></span>
440
- <span class='const'>Sorts</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='period'>.</span><span class='id identifier rubyid_compare'>compare</span><span class='lparen'>(</span><span class='id identifier rubyid_array'>array</span><span class='comma'>,</span> <span class='id identifier rubyid_first_algorithm_name'>first_algorithm_name</span><span class='comma'>,</span> <span class='id identifier rubyid_second_algorithm_name'>second_algorithm_name</span><span class='comma'>,</span> <span class='id identifier rubyid_num_tests'>num_tests</span><span class='rparen'>)</span>
441
- <span class='kw'>elsif</span> <span class='id identifier rubyid_type'>type</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>search</span><span class='tstring_end'>&quot;</span></span>
442
- <span class='const'>Searches</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='period'>.</span><span class='id identifier rubyid_compare'>compare</span><span class='lparen'>(</span><span class='id identifier rubyid_array'>array</span><span class='comma'>,</span> <span class='id identifier rubyid_first_algorithm_name'>first_algorithm_name</span><span class='comma'>,</span> <span class='id identifier rubyid_second_algorithm_name'>second_algorithm_name</span><span class='comma'>,</span> <span class='id identifier rubyid_num_tests'>num_tests</span><span class='comma'>,</span> <span class='id identifier rubyid_target'>target</span><span class='rparen'>)</span>
449
+ <span class='kw'>def</span> <span class='id identifier rubyid_compare'>compare</span><span class='lparen'>(</span><span class='id identifier rubyid_action'>action</span><span class='comma'>,</span> <span class='id identifier rubyid_data_set'>data_set</span><span class='comma'>,</span> <span class='id identifier rubyid_first_algorithm'>first_algorithm</span><span class='comma'>,</span> <span class='id identifier rubyid_second_algorithm'>second_algorithm</span><span class='comma'>,</span> <span class='id identifier rubyid_trials'>trials</span><span class='op'>=</span><span class='int'>1</span><span class='comma'>,</span> <span class='id identifier rubyid_target'>target</span><span class='op'>=</span><span class='kw'>nil</span><span class='rparen'>)</span>
450
+ <span class='kw'>if</span> <span class='id identifier rubyid_action'>action</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>sort</span><span class='tstring_end'>&quot;</span></span>
451
+ <span class='const'>Sorts</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='period'>.</span><span class='id identifier rubyid_compare'>compare</span><span class='lparen'>(</span><span class='id identifier rubyid_data_set'>data_set</span><span class='comma'>,</span> <span class='id identifier rubyid_first_algorithm'>first_algorithm</span><span class='comma'>,</span> <span class='id identifier rubyid_second_algorithm'>second_algorithm</span><span class='comma'>,</span> <span class='id identifier rubyid_trials'>trials</span><span class='rparen'>)</span>
452
+ <span class='kw'>elsif</span> <span class='id identifier rubyid_action'>action</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>search</span><span class='tstring_end'>&quot;</span></span>
453
+ <span class='const'>Searches</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='period'>.</span><span class='id identifier rubyid_compare'>compare</span><span class='lparen'>(</span><span class='id identifier rubyid_data_set'>data_set</span><span class='comma'>,</span> <span class='id identifier rubyid_first_algorithm'>first_algorithm</span><span class='comma'>,</span> <span class='id identifier rubyid_second_algorithm'>second_algorithm</span><span class='comma'>,</span> <span class='id identifier rubyid_trials'>trials</span><span class='comma'>,</span> <span class='id identifier rubyid_target'>target</span><span class='rparen'>)</span>
443
454
  <span class='kw'>end</span>
444
455
  <span class='kw'>end</span></pre>
445
456
  </td>
@@ -450,7 +461,7 @@
450
461
  <div class="method_details ">
451
462
  <h3 class="signature " id="sort-instance_method">
452
463
 
453
- #<strong>sort</strong>(array, algorithm_name) &#x21d2; <tt>Object</tt>
464
+ #<strong>sort</strong>(data_set, algorithm) &#x21d2; <tt>Object</tt>
454
465
 
455
466
 
456
467
 
@@ -459,7 +470,7 @@
459
470
  </h3><div class="docstring">
460
471
  <div class="discussion">
461
472
 
462
- <p>call sort algorithm method</p>
473
+ <p>Returns sorted data_set of specified sorting algorithm</p>
463
474
 
464
475
 
465
476
  </div>
@@ -473,17 +484,17 @@
473
484
  <pre class="lines">
474
485
 
475
486
 
476
- 43
477
487
  44
478
488
  45
479
- 46</pre>
489
+ 46
490
+ 47</pre>
480
491
  </td>
481
492
  <td>
482
- <pre class="code"><span class="info file"># File 'lib/algorithm_selector.rb', line 43</span>
493
+ <pre class="code"><span class="info file"># File 'lib/algorithm_selector.rb', line 44</span>
483
494
 
484
- <span class='kw'>def</span> <span class='id identifier rubyid_sort'>sort</span><span class='lparen'>(</span><span class='id identifier rubyid_array'>array</span><span class='comma'>,</span> <span class='id identifier rubyid_algorithm_name'>algorithm_name</span><span class='rparen'>)</span>
485
- <span class='id identifier rubyid_method'>method</span> <span class='op'>=</span> <span class='const'>Sorts</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='period'>.</span><span class='id identifier rubyid_method'>method</span><span class='lparen'>(</span><span class='id identifier rubyid_algorithm_name'>algorithm_name</span><span class='rparen'>)</span>
486
- <span class='id identifier rubyid_method'>method</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='id identifier rubyid_array'>array</span><span class='rparen'>)</span>
495
+ <span class='kw'>def</span> <span class='id identifier rubyid_sort'>sort</span><span class='lparen'>(</span><span class='id identifier rubyid_data_set'>data_set</span><span class='comma'>,</span> <span class='id identifier rubyid_algorithm'>algorithm</span><span class='rparen'>)</span>
496
+ <span class='id identifier rubyid_method'>method</span> <span class='op'>=</span> <span class='const'>Sorts</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='period'>.</span><span class='id identifier rubyid_method'>method</span><span class='lparen'>(</span><span class='id identifier rubyid_algorithm'>algorithm</span><span class='rparen'>)</span>
497
+ <span class='id identifier rubyid_method'>method</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='id identifier rubyid_data_set'>data_set</span><span class='rparen'>)</span>
487
498
  <span class='kw'>end</span></pre>
488
499
  </td>
489
500
  </tr>
@@ -495,7 +506,7 @@
495
506
  </div>
496
507
 
497
508
  <div id="footer">
498
- Generated on Fri Jul 22 11:22:30 2016 by
509
+ Generated on Sat Jul 23 23:26:27 2016 by
499
510
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
500
511
  0.9.4 (ruby-2.1.2).
501
512
  </div>