Skip to content

Commit 8d824a4

Browse files
authored
Merge pull request #1143 from ChrisKheng/scala
Add scala solution for 153-Find-Minimum-in-Rotated-Sorted-Array
2 parents 66fbb23 + 8b78969 commit 8d824a4

File tree

2 files changed

+25
-1
lines changed

2 files changed

+25
-1
lines changed

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ If you would like to have collaborator permissions on the repo to merge your own
5555
<sub>[74 - Search a 2D Matrix](https://leetcode.com/problems/search-a-2d-matrix/)</sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub>
5656
<sub>[875 - Koko Eating Bananas](https://leetcode.com/problems/koko-eating-bananas/)</sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub>
5757
<sub>[33 - Search Rotated Sorted Array](https://leetcode.com/problems/search-in-rotated-sorted-array/)</sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub>
58-
<sub>[153 - Find Minimum in Rotated Sorted Array](https://leetcode.com/problems/find-minimum-in-rotated-sorted-array/)</sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'></div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub>
58+
<sub>[153 - Find Minimum in Rotated Sorted Array](https://leetcode.com/problems/find-minimum-in-rotated-sorted-array/)</sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub>
5959
<sub>[981 - Time Based Key-Value Store](https://leetcode.com/problems/time-based-key-value-store/)</sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>✔️</div></sub>
6060
<sub>[4 - Find Median of Two Sorted Arrays](https://leetcode.com/problems/median-of-two-sorted-arrays/)</sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>✔️</div></sub>
6161
<sub>[206 - Reverse Linked List](https://leetcode.com/problems/reverse-linked-list/)</sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>✔️</div></sub> | <sub><div align='center'>❌</div></sub> | <sub><div align='center'>✔️</div></sub>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
object Solution {
2+
def findMin(nums: Array[Int]): Int = {
3+
var res = nums(0)
4+
var (left, right) = (0, nums.length - 1)
5+
6+
while (left <= right) {
7+
if (nums(left) < nums(right)) {
8+
res = res.min(nums(left))
9+
left = right + 1 // break condition
10+
} else {
11+
val mid = (left + right) / 2
12+
res = res.min(nums(mid))
13+
14+
if (nums(mid) >= nums(left)) {
15+
left = mid + 1
16+
} else {
17+
right = mid - 1
18+
}
19+
}
20+
}
21+
22+
return res
23+
}
24+
}

0 commit comments

Comments
 (0)