Introduction
Adding numbers has always been fascinating and you may think it to be the easiest mathematical operation possible. But believe me many a times that becomes the toughest problem to solve. Let us discuss this in more detail. It is really easy to add two numbers stored in two memory locations. The ALU provides you the option to use the ADD feature and store it on the DATA bus.
This is feasible when both the numbers can fit on the DATA bus one at a time. So, what about adding excessively large numbers, I know that the limit of BigInteger, Long, Double etc is too huge. But what if ...

Read More
# problem solving

## Find Pair of Numbers in Array with a Given Sum

Problem Definition
This problem has appeared in many interviews as well as the qualifying round of Google Code Jam in the past. There are various versions of the problem. To list a few:
Find Pair of Numbers in Array with a Given Sum - The array is unsorted and contains a given range of numbers bounded by min and max.
Find Pair of Numbers in Array with a Given Sum - The array is sorted and contains a given range of numbers bounded by min and max.
Find Pair of Numbers in Array with a Given Sum - The array contains unique numbers only.
In all the above versions, we have to return the ...

Read More
## Arrays are permutation of each other

Problem Definition – Arrays are permutation of each other
The problem definition goes as follows: Given two arrays of equal length, find out if the elements of one array is the permutation of the elements of another array.
Of course the constraint is to solve it in constant space and linear time. Which means that the running time should be O(N) and auxiliary space required should be O(1).
Approach
There may be several thoughts which seem to work but eventually they will fail at one or the other ways. Here are few interesting ways which may not work for all the conditions:
XORing the ...

Read More
## Shift Zeroes To Right

Problem Definition - Shift Zeroes To Right
We are trying to solve a problem at hand in which we are given an array of zeroes and positive integers. We need to Shift Zeroes To Right and positive integers to the left without disturbing the relative order of the positive integers.
Approach
I try to solve the problem in a simple way, you may find a similar problem on the web, here is a approach which solves this problem in O(N) time using constant auxiliary space (may be one or two extra variables).
The first thing which comes in mind can be traversing the array and swapping zeroes with the ...

Read More
## Interview Question – Sorting Time Strings

Introduction
This is a pretty famous problem asked in most of the interviews, "Sorting the dates". This is not a complicated one but sometimes, it becomes real confusing or starts giving unexpected results, if not properly taken care of. To learn more about similar problems, please visit the Interview Section.
Do not forget to use the Subscribe feature on the right to get updates on new articles.
Problem Statement- Sorting Time Strings
You are given an array of Time objects in which the times are in the following format "13:24:56.123" i.e. "HH:mm:SS.Z" and you need to sort them in ascendin...

Read More
## Interview Question – Find top three horses

Interview Question - Find top three horses :
You are given five race tracks and twenty five horses.Find the minimum number of races you need to organize to find the fastest three horses. Here five race tracks means that only five horses can run at a time.
Solution
The trick to approach these type of probelm is to consider the corner cases, most of the times what seems obvious is not what is true.
Lets name the five tracks as
T1 , T2, T3 , T4 , T5
and we organize five races in the beginning Let us say that we have the horses named from A - Y.
Lets organize the below races on the ...

Read More