Pergunta de entrevista da empresa Synopsys

Interview started off by asking me about my experience with Programming, What is the largest code you have written, etc. Questions were mostly software based-was quizzed on many basic software concepts for about an hour and VLSI basics for 10-15 minutes. C/C++: Imagine you have a program that takes in an integer input and you have to print out each digit using a function that can only print one char-how would you do it. Usual questions on Arrays, LinkedLists, Vectors, Hash tables-buckets; Identifying unique elements when using buckets. Questions on Trees-balanced, unbalanced trees, worst case complexity, Methods to balance trees:red-black and AVL trees. Questions on Graphs-Adjacency Lists, Adjacency Matrices. The difference between them and which one to use in what context. Questions on enumerated datatypes and typesorting. Questions about all of the sorting algorithms and which data structures to use to implement each of them, Worst case swap/comparison complexity in each case. Question on how qsort() is implemented in C and how it would sort Records of data. Questions on malloc, stack and heap. The difference between using malloc and declaring a fixed array. Questions on maps-when to use them, what is their advantage. VLSI-questions on latches/flipflops; Assign and always statements in verilog. Questions on Static CMOS and its advantages. Questions on the different types of power dissipation and methods to reduce each of them. Questions on Functions/Procedures/Tasks in Verilog.

Resposta da entrevista

Sigiloso

29 de jun. de 2015

Brief overview of possible answers: "C/C++: Imagine you have a program that takes in an integer input and you have to print out each digit using a function that can only print one char-how would you do it." //Let's assume that no negative values are passed void print_digits(int n) { int inc, rem; inc = 1; while(n > 0) { rem = n/inc % 10; one_char(rem); //Some function that only prints one char n = n - (rem * inc); inc = inc * 10; } }