**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*.

- Compare it with the

See the code below for more understanding.

**Code**:

**Output**:

Smallest and 2nd smallest elements are: 1 2