Given an unsorted array of integers, find the smallest number in the array, the largest number in the array, and the smallest number between the two array bounds that are not in the array.
For instance, given the array [-1, 4, 5, -23, 24], the smallest number is -23, the largest number is 24, and the smallest number between the array bounds is -22. You may assume the input is well-formed.
Your solution should return an array [smallest, minimumAbsent, largest]
The smallest
integer should be the integer from the array with the lowest value.
The largest
integer should be the integer from the array with the highest value.
The minimumAbsent
is the smallest number between the largest and the smallest number that is not in the array.
minMinMax([-1, 4, 5, -23, 24]); //[-23, -22, 24]
minMinMax([1, 3, -3, -2, 8, -1]); //[-3, 0, 8]
minMinMax([2, -4, 8, -5, 9, 7]); //[-5, -3,9]
This challenge comes from kodejuice on CodeWars. Thank you to CodeWars, who has licensed redistribution of this challenge under the 2-Clause BSD License!
Want to propose a challenge idea for a future post? Email yo+challenge@dev.to with your suggestions!
Top comments (14)
Haskell solution:
The
\\
operator is the list difference, and the..
can be used on any enum type to build a list. This means this works for a large number of types, like:Runnable example:
Here is the PHP code snippets:
TypeScript with tests
github.com/kiliman/dev-to-daily-ch...
Test
My solution in Swift, I check if the array is not empty and bigger than two elements :
Elm
Playground
Here.
I'm sure there's less time complexity one but this boi will get its job done
Here is a solution with LabVIEW. Not tried LabVIEW? The community edition beta is now open!🎉🎉
Holy crap I had no idea you could do that in Ruby. Thank ya for the old post that explained it very clearly.
Can you explain this part? I haven't seen sort used like this before.
Some comments may only be visible to logged-in visitors. Sign in to view all comments.