Adobe - First round Questions asked
He is very soft-spoken and one of my friend told me that this guy had brutally destroyed him. So I was terribly nervous. I usually am confident but in that room, I was stammering! Finally, it turned out that he wasn't that brutal after all. Moral of the story: Stay confident at all times.
1. He asked me my specialization? When I told him that I had none as I didn't want to specialize in this stage, he was a little surprised but appeared satisfied with my reason.
2. Why not further studies? (He had noted that I was third in my batch. He appeared impressed by that
Answer : I told him that my profile clearly indicated that I've been trying to get into the industry via internships, industry-funded projects right from second year, second sem. I said that I was fully sure that I didn't want to do MS anytime soon.
3. He asked me to tell him about my favorite project.
Answer : I told him about the web-browser that I had developed for cell-phones. I thought that was the only project which was closest to what Adobe was working on. He appeared satisfied with my answers.
4. He then looked at my grades. He commented that my lowest grade - B- was in Digital Image
Processing. I just looked at him like a doofus thinking of what to say. But he quickly added, 'don't worry, it happens.' So people, be fully prepared to explain any anomalous grades. I was prepared with the explanation of the W in the my grade-sheet but not of the B- in DIP. I know that this is really stupid considering that I was interviewing with Adobe. Don't make this mistake.
5. He then asked me a question that had been asked in Round 4, written test:
Describe an optimal algorithm to find the second minimum number in an array of numbers. What is the exact number of comparisons required in the worst case? Note that they didn't ask the order in Big-Oh notation. They wanted the exact number of comparisons.
Answer : I screwed up, big time in this question. I had superficially discussed this question with my friend a while ago and he had outlined an algorithm which I thought that I had understood, but I hadn't. I started off explaining it but got stuck in the middle. He sternly told me to read it up again. One solution that I could tell him, and which I had written in the test was this:
Use two variables - min and second min. Initialize them by comparing the first two elements of the array. This is (1) comparison. Then, go through the entire array, from index 2 to n-1 comparing each element, first with min and then with second min, updating each variable as necessary. This will involve a worst case of two comparisons for each element. Therefore, total number of comparisons = 2*(n-2) + 1 = 2*n - 3 comparisons.
I'll try to update this with a better solution, sometime soon.
6. Given a polygon (could be regular, irregular, convex, concave), find out whether a particular point lies inside it or outside it.
Answer : This is an easy, straight question from graphics. You shoot a ray parallel to the x-axis passing through this point. Start with odd parity. Change parity of ray each time it intersects an edge of the polygon (consider special case of when the line passes through a vertex of the polygon. Change parity only if it passes through a vertex which has one edge above it and one edge below the ray). If the parity of ray is even when it passes through the point, it is inside the polygon, else it is not.
7. He asked me to explain Canny's algorithm to him. (this was because my DIP project was related to this)
Answer : This is simple. Study DIP
8. Then, he gave me a practical problem to solve: Suppose you are given an image which contains some text and some photos. How do you find the location of the image?
Answer : I gave various alternatives - from searching for RGB components, to using OCR.. he didn't appear fully satisfied. I think he was looking for edge-detection, but that would fail, if the text contained tables, etc.