SnowArraySort 1.0.13 → 1.0.14

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.
data/Gemfile CHANGED
@@ -1,3 +1,3 @@
1
- source 'https://rubygems.org'
2
-
3
- gemspec
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
data/README.md CHANGED
@@ -1,3 +1,3 @@
1
- # SnowArraySort
2
- Algorithm's for sorting array's
3
- # SnowArraySort
1
+ # SnowArraySort
2
+ Algorithm's for sorting array's
3
+ # SnowArraySort
@@ -1,11 +1,11 @@
1
- module SnowArraySort
2
- class SnowAD
3
- include SnowArraySort
4
-
5
- def <=>(other)
6
- -super
7
- end
8
- end
9
- end
10
-
11
-
1
+ module SnowArraySort
2
+ class SnowAD
3
+ include SnowArraySort
4
+
5
+ def <=>(other)
6
+ -super
7
+ end
8
+ end
9
+ end
10
+
11
+
@@ -1,16 +1,32 @@
1
- module SnowArraySort
2
- class MaSort
3
- include SnowArraySort
4
-
5
- def self.merge_sort(lists)
6
- return lists if lists.count == 1
7
-
8
- middle = lists[0..(lists.count / 2) - 1 ]
9
- left = lists[0..middle.count - 1]
10
- right = lists[middle.count..lists.count]
11
-
12
- x = merge_sort(left)
13
- y = merge_sort(right)
14
- end
15
- end
1
+ module SnowArraySort
2
+ class MaSort
3
+ include SnowArraySort
4
+
5
+ def self.merge_sort(lists)
6
+ return lists if lists.count == 1
7
+
8
+ middle = lists[0..(lists.count / 2) - 1 ]
9
+ left = lists[0..middle.count - 1]
10
+ right = lists[middle.count..lists.count]
11
+
12
+ x = merge_sort(left)
13
+ y = merge_sort(right)
14
+ end
15
+
16
+ def self.mergesort(container)
17
+ return container if container.size <= 1
18
+ mid = container.size / 2
19
+ left = container[0...mid]
20
+ right = container[mid...container.size]
21
+ merge(mergesort(left), mergesort(right))
22
+ end
23
+
24
+ def self.merge(left, right)
25
+ sorted = []
26
+ until left.empty? or right.empty?
27
+ left.first <= right.first ? sorted << left.shift : sorted << right.shift
28
+ end
29
+ sorted + left + right
30
+ end
31
+ end
16
32
  end
@@ -1,20 +1,23 @@
1
- module SnowArraySort
2
- class Arrays < MaSort
3
-
4
- include SnowArraySort
5
-
6
-
7
- def initialize(merge_sort)
8
- super (merge_sort)
9
- end
10
-
11
- def self.merged_arrays
12
-
13
- a = [1,3,4,6,7,2,2]
14
- f = MaSort.merge_sort a
15
-
16
-
17
- puts f
18
- end
19
- end
1
+ module SnowArraySort
2
+ class Arrays < MaSort
3
+
4
+ include SnowArraySort
5
+
6
+
7
+ def initialize
8
+
9
+ end
10
+
11
+ def self.div_and_conquer
12
+ a = [1,3,4,6,7,2,2]
13
+ b = MaSort.mergesort a
14
+ puts b
15
+ end
16
+
17
+ def self.merged_arrays
18
+ a = [1,3,4,6,7,2,2]
19
+ f = MaSort.merge_sort a
20
+ puts f
21
+ end
22
+ end
20
23
  end
@@ -1,4 +1,4 @@
1
- module SnowArraySort
2
- VERSION = "1.0.13"
3
- end
4
-
1
+ module SnowArraySort
2
+ VERSION = "1.0.14"
3
+ end
4
+
data/lib/SnowArraySort.rb CHANGED
@@ -1,8 +1,8 @@
1
- require_relative "SnowArraySort/version"
2
- require_relative "SnowArraySort/merge_array_sort_snow"
3
- require_relative "SnowArraySort/asc_desc_array_sort_snow"
4
- require_relative "SnowArraySort/test_of_merge_array"
5
-
6
- module SnowArraySort
7
-
8
- end
1
+ require_relative "SnowArraySort/version"
2
+ require_relative "SnowArraySort/merge_array_sort_snow"
3
+ require_relative "SnowArraySort/asc_desc_array_sort_snow"
4
+ require_relative "SnowArraySort/test_of_merge_array"
5
+
6
+ module SnowArraySort
7
+
8
+ end
metadata CHANGED
@@ -1,14 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: SnowArraySort
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.13
4
+ version: 1.0.14
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Justin Snow
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2015-11-09 00:00:00.000000000 Z
12
+ date: 2015-11-10 00:00:00.000000000 Z
12
13
  dependencies: []
13
14
  description: Support for asc and desc order on multiple array fields also added ability
14
15
  to merge sort as well.
@@ -18,35 +19,36 @@ executables: []
18
19
  extensions: []
19
20
  extra_rdoc_files: []
20
21
  files:
21
- - Gemfile
22
22
  - README.md
23
- - lib/SnowArraySort.rb
24
- - lib/SnowArraySort/asc_desc_array_sort_snow.rb
23
+ - Gemfile
25
24
  - lib/SnowArraySort/merge_array_sort_snow.rb
26
25
  - lib/SnowArraySort/test_of_merge_array.rb
27
26
  - lib/SnowArraySort/version.rb
27
+ - lib/SnowArraySort/asc_desc_array_sort_snow.rb
28
+ - lib/SnowArraySort.rb
28
29
  homepage: https://github.com/Jrsnow8921/SnowArraySort
29
30
  licenses:
30
31
  - MIT
31
- metadata: {}
32
32
  post_install_message:
33
33
  rdoc_options: []
34
34
  require_paths:
35
35
  - lib
36
36
  required_ruby_version: !ruby/object:Gem::Requirement
37
+ none: false
37
38
  requirements:
38
- - - ">="
39
+ - - ! '>='
39
40
  - !ruby/object:Gem::Version
40
41
  version: '0'
41
42
  required_rubygems_version: !ruby/object:Gem::Requirement
43
+ none: false
42
44
  requirements:
43
- - - ">="
45
+ - - ! '>='
44
46
  - !ruby/object:Gem::Version
45
47
  version: '0'
46
48
  requirements: []
47
49
  rubyforge_project:
48
- rubygems_version: 2.2.2
50
+ rubygems_version: 1.8.23.2
49
51
  signing_key:
50
- specification_version: 4
52
+ specification_version: 3
51
53
  summary: Algorithms for sorting arrays
52
54
  test_files: []
checksums.yaml DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- SHA1:
3
- metadata.gz: 1843fcfcdd2d4bc1cfdcd014c3b7f43b8fcc704a
4
- data.tar.gz: 5f6856d6fa4c9e294c4926081c94529854db655b
5
- SHA512:
6
- metadata.gz: 69ad33893f44a2db1dee700a8e922f214bfb0541512bf9ca334b270e58c437ba0ed7351057f3a4c1926ae2be76132b67a0a345650735f06404989b9b55d83bd5
7
- data.tar.gz: e942ebc7694729f11c1d2384a2debe234a1053759e7f8d665afdb8a686ccae787e53ccb93cdd835e56af80e4c5697ac2dab87c73bfc49efdd83d867ab4777925