Introduction
This is a famous interview question where it is asked to write program for simple arithmetic polynomial operations. The operation may include adding, subtracting and multiplication of two polynomials (mostly in one variable).
For those who want to refresh their knowledge of polynomials, I would include a section below:
Understanding Polynomials
Polynomials are mathematical expressions of the form a1xnym + a2xn-1ym-1+ . . . + akxn-ky + . . . + anx + an+1.
The above polynomial is said to be a polynomial in two variables (x and y).
a1xn + a2xn-1 + a3xn-2 + . . . + an-1x + ...

Read More
# Interview Questions

This category contains few tricky questions asked in interviews..

## Combination of Numbers

Introduction
I already have one post on this blog which explains the permutations code, now its time for the combinations.
The idea behind Combination of Numbers
Combination by definition is a concept of discrete mathematics which essentially relates to the act of selecting a list of items from a collection. For e.g. If I have to pick up 3 fruits from a basket of 10 fruits then what all ways are there to pick them up? Combinations is the answer to this question.
Let us say that I picked an Apple, a Banana and a Strawberry from the basket, then it really won't matter in what order I pi...

Read More
## Interleaving Strings

Problem Statement
This is a question from one of the interview experiences. The statement, "Given three strings A, B and C find if C is an interleaving of A and B." Interleaving is defined as below:
A string C is said to be an interleaving of two strings A and B if C contains a sub sequence of A and B such that the relative order of characters in A and in B are preserved in C.
For e.g. :
A - ABCD
B - BACDX
C - ABACDXBCD
The Idea - Interleaving Strings
Here I am not giving any solution which is less than O(M*N) solution where M is the length of the shortest string among A and B...

Read More
## Find Frequency In Sorted Array

Problem Statement
This is a question from one of the interview experiences. You are given a sorted array of numbers (this can be extended for arrays of characters, strings and what not) and a number K. Find the number of occurrences of K in the array.
Solution
Yes you got that right, it is really very simple. Walk through the array sequentially and if you get K then start counting till you get anything bigger than K. You can break out of the loop after this and the counter will tell you the obvious answer.
So, why am I even writing this post?
Because this is not fun, the above approach te...

Read More
## Adding numbers using Linked Lists

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