5 ms·
Note that I do not work for Google and have never even applied. I have no knowledge of their interviewing process and can only speak to my own experiences and p
by bartonfink 14y ago
Note that I do not work for Google and have never even applied. I have no knowledge of their interviewing process and can only speak to my own experiences and prejudices.
I can't say that you wouldn't pass a Google interview, but right now, you likely wouldn't pass an interview I gave without knowledge of data structures. Algorithms are problem-specific, but data structures (arrays/lists, trees, hashtables, graphs) are universal. If you get your data structured properly, in many cases it's of trivial importance which algorithm you use to operate on that data. I don't care about big-O performance beyond a back-of-the-envelope calculation. I don't care about someone knowing the ins-and-outs of A* search, but I do care if they've never heard of a graph. I care very much if I'm going to have to explain to you the difference between a hashtable and a list (as I did on Friday to one of our front-end engineers who thought he'd do some work on our API...).It's not a difficult gap in knowledge to fill, but it's an important one.
- mkopinsky 14y agoOK, definitely agreed. I honestly could not tell you about the different kinds of tree structures, but of course I know the difference between a list, linked list, tree, graph, (hash)map, and so on. I find it hard to believe that someone could even competently do front-end work without some level of understanding of this. Last week I came across an issue where performance for $(".foo") selectors was problematic in IE<=8, which don't have a native document.getElementsByClassName() so jquery had to search the whole DOM. Solution was to select as $("div.foo"). Without knowing about the algorithmic complexity in searching a tree and the corresponding algorithmic simplicity in searching an indexed hashtable (such as {"div": [list of divs]} which I'm sure the browser keeps internally) this solution would have been non-intuitive.