News for hackers. Stuff that matters.
Re:C++ Programming Questions to Ask on Interview (2017) by stochastic_monk on Friday October 19, 2018 @08:49AM (#18256323)
I don’t think so. Heaps are a bread-and-butter data structure typically covered in an undergraduate Data Structures course and then used in an undergraduate introductory Algorithms course.

I’d expect someone to know heaps the same way I’d expect them to know about hashmaps or quicksort.

Re:C++ Programming Questions to Ask on Interview (2017) by ajross on Friday October 19, 2018 @11:17AM (#18257267)
But as mentioned multiple times, I do know heaps. I've written heaps that were deployed in production software even. Yet given a question that asks without context "Write a max heap" I'd be lost. That's not a term I know.

Conflation of terminology (about which heaps are already a terribly confusing example) with expertise is kinda the essence of why this kind of list is garbage.

And in any case, I retreat the broader point that has nothing to do with my personal vocabulary: the question wasn't even asking about how heaps work! It just wanted to know you could write a class declaration with the API.

Re:C++ Programming Questions to Ask on Interview (2017) by stochastic_monk on Friday October 19, 2018 @02:33PM (#18258881)
I agree that the list isn’t good. I would only expect someone to know that it permits constant time access to a maximum or minimum element, and that it has a tree structure. Actually writing an implementation I would not.

A class declaration with an API (and no implementation) would be rather simple: insert, top, remove, and a constructor.

I will say that I typically hear “heap” and whether it’s max or min is largely implicit in the task, so perhaps the comparator qualification is unneeded.

Re:C++ Programming Questions to Ask on Interview (2017) by jdlyga on Friday October 19, 2018 @10:54AM (#18257104)
True, but so many excellent programmers, people with 10 years of experience, typically don't remember all the details of classes they took a decade ago. I remember heaps, but I'd have to look up the details since it's not something I work with everyday. Once you're deep into your career, it's much more about practical real world style programming.