Be the first user to complete this post
|
Add to List |
342. Find two smallest elements in a given array
Objective: Given an array of integers, write an algorithm to find the two smallest elements in the array.
Example:
Int [] a = { 6, 8, 1, 9, 2, 10}; Output: 1, 2 Int [] a = { 6, 8, 1, 9, 2, 1, 10, 10}; Output: 1, 1 Int [] a ={6}; Output: Invalid Input, array size is less than 2
Approach:
- Take two variables; let’s call them first and second and mark them as +∞.
- Iterate through the array and for each element (let’s call it current),
- Compare it with the first and if first is greater, assign the first value to second and assign current to first.
- If above step is not true then current element might be a candidate of second smallest element, so check if current<second, if yes then assign it to second.
See the code below for more understanding.
Output:
Smallest and 2nd smallest elements are: 1 2