**Problem link:** http://www.geeksforgeeks.org/inorder-tree-traversal-without-recursion/

**Problem Statement:**

It is easy to traverse a binary tree in-order using recursion. Do it without using recursion.

Continue reading

[TopCoder, ProjectEuler, HackerRank, CodeChef, CodeForces, InterviewSites]

**Problem link:** http://www.geeksforgeeks.org/inorder-tree-traversal-without-recursion/

**Problem Statement:**

It is easy to traverse a binary tree in-order using recursion. Do it without using recursion.

Continue reading

**Problem link:** http://www.geeksforgeeks.org/lowest-common-ancestor-in-a-binary-search-tree/

**Problem Statement:**

Given values of two nodes in a Binary Search Tree, write a c program to find the Lowest Common Ancestor (LCA). You may assume that both the values exist in the tree. You can assume that the nodes are present in the tree.

Continue reading

**Problem link:** http://www.geeksforgeeks.org/check-for-identical-bsts-without-building-the-trees/

**Problem Statement:**

Given two arrays which represent a sequence of keys. Imagine we make a Binary Search Tree (BST) from each array. We need to tell whether two BSTs will be identical or not without actually constructing the tree.

For example, the input arrays are {2, 4, 3, 1} and {2, 1, 4, 3} will construct the same tree

Continue reading

**Problem link:** http://www.geeksforgeeks.org/connect-leaves-doubly-linked-list/

**Problem Statement:**

Given a Binary Tree, extract all leaves of it in a Doubly Linked List (DLL). Note that the DLL need to be created in-place. Assume that the node structure of DLL and Binary Tree is same, only the meaning of left and right pointers are different. In DLL, left means previous pointer and right means next pointer.

Continue reading

**Problem link:** http://www.geeksforgeeks.org/move-zeroes-end-array/

**Problem Statement:**

Given an array of random numbers, Push all the zero’s of a given array to the end of the array. For example, if the given arrays is {1, 9, 8, 4, 0, 0, 2, 7, 0, 6, 0}, it should be changed to {1, 9, 8, 4, 2, 7, 6, 0, 0, 0, 0}. The order of all other elements should be same. Expected time complexity is O(n) and extra space is O(1).

Continue reading

**Problem link:** http://www.geeksforgeeks.org/boundary-traversal-of-binary-tree/

**Problem Statement:**

Given a binary tree, print boundary nodes of the binary tree Anti-Clockwise starting from the root.

Continue reading

[The problem appeared in TopCoder SRM 594 (Div-2, Level-1)]

**Problem link:** http://community.topcoder.com/stat?c=problem_statement&pm=12811

**Problem Statement:**

Fox Ciel is now in high school. The seats in her classroom are arranged into an n by m matrix. The rows are numbered from 0 to n-1 (front to back) and the columns from 0 to m-1 (left to right).

At the beginning, Ciel can choose any of the seats. Then, at the end of each week Ciel will shift one row to the back and one column to the right, wrapping around whenever necessary. Formally, if her current seat is in row r and column c, then her seat next week will be the one in row ((r+1) modulo n) and column ((c+1) modulo m).

Fox Ciel now wonders whether she can sit in all the seats in the classroom if she follows the above procedure. As we already mentioned, she can start in any of the seats. Also, she can attend the school for as many weeks as she wants to. Return “Possible” if she can sit in all the seats and “Impossible” otherwise.

Continue reading

## Recent Comments