Recently just finished the ZipRecruiter interview process, the overall experience is still quite special ~ online sharing in this area is not much, so I want to take advantage of the heat to record a bit, by the way, some of the real topics and preparation ideas organized, this ZipRecruiter Interviews From our team and trainees in real cases hope to help the partners who are sprinting!


Round 1 Multidimensional Array Operations
The first question is about arrays: multidimensional array manipulation. The question asks to manipulate a two-dimensional arrayint arr[][] = { {2,7,9}, {3,6,1}, {7,4,2} }
Performs an iteration and calculates the sum of all elements in the array.
Programhelp's mentor immediately shared a remote screen to his secondary device, quickly explaining the principles of multidimensional arrays while demonstrating step-by-step the correct way to index them in code. "A two-dimensional array is like a table, with the first index being the rows and the second index being the columns, and we want to make sure that the indexes don't extend beyond the array in the loop." The mentor explains as he modifies the loop condition in the code. After receiving the prompt, the mentee uses thefor
The loop successfully traverses the array, accumulates the element values, and correctly calculates the sum of the array elements.
second round (of match, or election) Dynamic Programming (DP) Problems
The second question comes to DP Question : Given an array of integers and a target value, find how many ways there are to make the sum of the elements equal to the target value by selecting the elements of the array (you can repeat the selection of the elements).
The instructor helps participants analyze the problem, starting with the most basic definition of state, setting thedp[i][j]
denotes pre-usei
elements, the composition and isj
of the number of programs. The state transfer equation is derived step by stepdp[i][j] = dp[i - 1][j] + dp[i][j - arr[i]]
(when)j >= arr[i]
time), otherwisedp[i][j] = dp[i - 1][j]
. "We first identify the subproblems of the problem and then find the relationship between them so that we can construct the correct dynamic programming model." Under the guidance of the instructor, the participants used a two-dimensional array to implement a dynamic programming solution, found the correct number of solutions, and submitted it successfully.
Round 3 String manipulation/string processing
The third question is a string manipulation that requires finding the first non-repeating character from the given string "ComputerScience".
The tutor quickly demonstrated an efficient solution based on a hash table on the trainee's secondary device by remote operation. He explains, "The hash table quickly records the number of times a character appears so we can easily find the first non-repeating character." The tutor creates the hash table on the secondary device, traverses the string to record the number of times each character appears, and then traverses the string again to find the first character that has a value of 1 in the hash table. After receiving the hash table solution hints sent by the tutor on the primary device, the trainee modifies the code according to the tutor's steps, and finally succeeds in finding the character 'o' and completes the answer to the third question.
fourth round (of match, or election) Balanced binary tree conversion
The last question was about converting an ordinary BST to a balanced BST. this question involved complex tree structure operations, and the participants felt at a loss when dealing with node balancing of trees, writing disorganized code and trying various methods, but failed to successfully construct a balanced binary search tree.
Our tutor accepted the topic and demonstrated the solution on the tutee's secondary device directly through remote operation. The tutor quickly writes code on the secondary device, uses recursive method to traverse the ordinary BST in the middle order, generates an ordered array, and then constructs the balanced BST from the ordered array by bisection method.The student receives the code sent by the tutor on the primary device, and follows the steps of the tutor, and finally succeeds in converting the ordinary BST into a balanced BST.He has a deeper understanding of the method of constructing the balanced BST. He has a deeper understanding of how to build a balanced BST.
ProgramHelpTake the panic out of interviews.
Feeling anxious about facing a complex technical interview? Don't worry.ProgramHelps proxy interviewing and interview assistance services are there for you! We help interviewees pass interviews quickly by providing documented answers and solutions in real time.Contact Us, so that there is no distance between you and the Offer of your heart!