Skip to content

Commit 257a290

Browse files
Added Binary search in Ruby
1 parent 61dfade commit 257a290

File tree

7 files changed

+29
-12
lines changed

7 files changed

+29
-12
lines changed

Haskell/practice.hs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
module Main where
2+
import System.Environment
3+
4+
main :: IO ()
5+
main = do
6+
args <- getArgs
7+
putStrLn ("Hello, " ++ args !! 0)

Ruby/binary_search.rb

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
def binary_search(array, value)
2+
lower_bound = 0
3+
upper_bound = array.length - 1
4+
5+
while lower_bound <= upper_bound do
6+
mid_point = (upper_bound + lower_bound) / 2
7+
mid_value = array[mid_point]
8+
9+
if value < mid_value
10+
upper_bound = mid_point - 1
11+
elsif value > mid_value
12+
lower_bound = mid_point + 1
13+
elsif value == mid_value
14+
return mid_point
15+
end
16+
end
17+
return nil
18+
end
19+
20+
21+
22+

Ruby/bubble_sort.rb

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,3 @@ def bubble_sort(array)
88
end
99
return array
1010
end
11-
12-
13-
puts bubble_sort([5, 4, 3, 2, 1])

Ruby/insertion_sort.rb

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,3 @@ def insertion_sort(array)
1313
end
1414
return array
1515
end
16-
17-
18-
puts insertion_sort([5, 4, 3, 2, 1])

Ruby/linear_search.rb

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,3 @@ def linear_search(array, item)
66
end
77
return -1
88
end
9-
10-
puts linear_search([1, 2, 3, 4, 5], 3)

Ruby/merge_sort.rb

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,5 +33,3 @@ def merge_sort(array)
3333

3434
return merge(sorted_left, sorted_right)
3535
end
36-
37-
puts merge_sort([5, 4, 2, 1])

Ruby/selection_sort.rb

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,5 +12,3 @@ def selection_sort(array)
1212
end
1313
return array
1414
end
15-
16-
puts selection_sort([5, 4, 3, 2, 1])

0 commit comments

Comments
 (0)