# SAMPLE Adobe Technical Paper 2012

1) Write a program to reverse a linked list and sort the same.

2) Given two integers A & B. Determine how many bits required to convert A to B. Write a function int BitSwapReqd(int A, int B);

3) Write an algorithm to insert a node into sorted linked list. After inserting, the list must be sorted.

4) Without using /,% and * operators. write a function to divide a number by 3. itoa() function is available.

5) Write a program to swap two integer pointers.

6) Write a function int round (float x) to round off a floating point num to int.

7) write an ALP to find sum of First n natural numbers using the following Instructions

LDA num ; load Accumulator with num
DCR R ; decrement Register R INR R ; increment Register R
MOV x,y ; move the contents of register y into register x
DJNZ label; Decrement & Jump if A <> 0
you can use B & C registers in addition to A register

8) Prove that a tree is BST. What is height of a tree?

9)  Given A, B & C Boolean polynomials. Prove That (A+BC) = (A+B) (A+C)

C Test:-

Q2) Find if a number is divisible my 3, without using %,/ or *. You can use atoi().
Q3) 2 integers A and B are given, find the no of bits that need to be flipped in A to get B. ( X-OR a and b and count the number of bits)
Q4) Write a Rotate function for rotating elements in an array, using a reverse function.
Q5) Given 2 sorted arrays A and B with duplicate elements, get C= A -B and does not have duplicates
(use a variation of merging 2 arrays and then remove the duplicates.)
Q6) Some routines to swap int pointers. Q7) Subtraction of 2 base 13 numbers. Q8) Min and max nodes of a quad tree.

Q9) Prove that in a tree no of internal nodes is one less than leaves.
Q10) A couple of Boolean logic proofs
Q11) Code to see if a binary tree is a BST or not.
Q12) Switch case program out put