ruby_study 0.1.8
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 +7 -0
- data/lib/week1/merge_sorted_array.rb +27 -0
- data/lib/week1/week_one.rb +26 -0
- metadata +73 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 707f5e12fed869efba452f75cd6557b543b138a4cb3bcf7369027e10b41a974c
|
4
|
+
data.tar.gz: 7cedc00c9f0c1a9974eb9c575fffa55455439c8fd24daec0550de95d85f44922
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: fb8a44176a98cce9fc2e6c0ba878545961d5c90b056ef853e53f3382efd72371fff88beb10c6290279ecfec632d2b30ba6082fd0d8c9ae630b657a848c30eac4
|
7
|
+
data.tar.gz: 6d6b7ea10ce3bcc9c236d498fbc25f1de6662fd678ca2b66c816ba1d239a70432b3af567a8d2227e737f8244c8333487cd24fc1d94f9915cd37a1d28304ccad1
|
@@ -0,0 +1,27 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# @param {Integer[]} nums1
|
4
|
+
# @param {Integer} m
|
5
|
+
# @param {Integer[]} nums2
|
6
|
+
# @param {Integer} n
|
7
|
+
# @return {Void} Do not return anything, modify nums1 in-place instead.
|
8
|
+
def merge(nums1, m, nums2, n)
|
9
|
+
i = m - 1
|
10
|
+
j = n - 1
|
11
|
+
k = m + n - 1
|
12
|
+
while i >= 0 && j >= 0
|
13
|
+
if nums1[i] > nums2[j]
|
14
|
+
nums1[k] = nums1[i]
|
15
|
+
i -= 1
|
16
|
+
else
|
17
|
+
nums1[k] = nums2[j]
|
18
|
+
j -= 1
|
19
|
+
end
|
20
|
+
k -= 1
|
21
|
+
end
|
22
|
+
while j >= 0
|
23
|
+
nums1[k] = nums2[j]
|
24
|
+
j -= 1
|
25
|
+
k -= 1
|
26
|
+
end
|
27
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
def merge(nums1, m, nums2, n)
|
4
|
+
i = m - 1 # Pointer for the last valid element in nums1
|
5
|
+
j = n - 1 # Pointer for the last element in nums2
|
6
|
+
k = m + n - 1 # Pointer for the last position in nums1
|
7
|
+
|
8
|
+
# Merge the arrays from the end to the beginning
|
9
|
+
while i >= 0 && j >= 0
|
10
|
+
if nums1[i] > nums2[j]
|
11
|
+
nums1[k] = nums1[i]
|
12
|
+
i -= 1
|
13
|
+
else
|
14
|
+
nums1[k] = nums2[j]
|
15
|
+
j -= 1
|
16
|
+
end
|
17
|
+
k -= 1
|
18
|
+
end
|
19
|
+
|
20
|
+
# If there are any elements left in nums2, copy them
|
21
|
+
while j >= 0
|
22
|
+
nums1[k] = nums2[j]
|
23
|
+
j -= 1
|
24
|
+
k -= 1
|
25
|
+
end
|
26
|
+
end
|
metadata
ADDED
@@ -0,0 +1,73 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: ruby_study
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.8
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- EL REY UNO
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2024-12-07 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: minitest
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '5.14'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '5.14'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rake
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
description: A gem that studies Ruby while working weekly LeetCode Challenges
|
42
|
+
email:
|
43
|
+
- EddieZeboSlightWindow@gmail.com
|
44
|
+
executables: []
|
45
|
+
extensions: []
|
46
|
+
extra_rdoc_files: []
|
47
|
+
files:
|
48
|
+
- lib/week1/merge_sorted_array.rb
|
49
|
+
- lib/week1/week_one.rb
|
50
|
+
homepage: https://github.com/ElReyUno/ruby_study
|
51
|
+
licenses:
|
52
|
+
- MIT
|
53
|
+
metadata: {}
|
54
|
+
post_install_message:
|
55
|
+
rdoc_options: []
|
56
|
+
require_paths:
|
57
|
+
- lib
|
58
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
59
|
+
requirements:
|
60
|
+
- - ">="
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
version: '0'
|
63
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
64
|
+
requirements:
|
65
|
+
- - ">="
|
66
|
+
- !ruby/object:Gem::Version
|
67
|
+
version: '0'
|
68
|
+
requirements: []
|
69
|
+
rubygems_version: 3.4.19
|
70
|
+
signing_key:
|
71
|
+
specification_version: 4
|
72
|
+
summary: A gem to study Ruby
|
73
|
+
test_files: []
|