who could have seen this coming, other than everyone who told the homebrew tree inverter guy this was a bad idea they absolutely shouldn’t do
the homebrew tree inverter guy
I knew he did homebrew, why “tree inverter” though?
here’s a hacker news thread that talks about it. to be fair to Max, the question (and the Google-style interview in general) is absolute bullshit. to be entirely unfair to Max, he seems like a fucking asshole and his recent projects have been crowd-sourced consent violations.
Dude couldn’t invert a binary tree in an interview and so couldn’t get a job, allegedly.
No one could figure out what inverting a binary tree actually means. Like maybe swapping left and right or something?
In which case the best way to invert a binary tree of course being:
struct Node { private: Node *leftish = nullptr, *rightish = nullptr; public: static bool inverted; // I hope no one ever needs two trees... // O(1) tree invert operation! void Invert() { inverted = !inverted; } Node &left() { return inverted ? *rightish : *leftish; } Node &right() { return inverted ? *leftish : *rightish} }; bool Node::inverted = false;
Don’t change the tree. Change your perception of the tree.
I mean sure? Swapping the pointers recursively is also fine. It’s a question meant to see if the interviewee can talk about data structures or code, not to come up with a perfectly optimal working solution. Having a lengthy discussion about what “inversion” of a binary tree even means would even be totally fine imo.
I’ve interviewed a fair number of candidates and I ask them a very simple question with a bunch of edge cases and grade them based on how they talk about it, not the final solution.
I get the feeling that Max got frustrated and wasn’t able to coherently speak about the problem, or the interviewer was dumb as rocks. I think both are equally likely.
Oh yeah I’ve had the misfortune of giving hundreds of interviews – mostly programming interviews, but also talking interviews which I consider vastly superior. As well as being on the receiving end of a few.
I’ve definitely had people do poorly under pressure before. This can be over-complicating the problem, clamming up (surprisingly common), or simply getting too worked up by the interview setting. I hate that because I often think they could have met my rubric in a more relaxed environment.
I’ve also been on the receiving end of bad interviewers. Don’t get me started on HP asking me to implement offsetof in C++… n.b. implementing offsetof in C++ w/o undefined behavior is impossible it has to be a compiler builtin.
idly, first time I’ve seen lemmy do any sensible render with a textblock, which retro-informs a lot about the choices for text handling (which we’ve wondered bout in the other thread)
A whiteboard is just a glorified chalkboard, and I got sick of being asked to prove I understood how to use and manipulate one of the most complex systems ever invented by man by basically rubbing a soft rock against a hard rock.
I’m now in favor of puzzle interview questions, just so this guy gets asked them
EDIT: I was trying to reply to a different comment whoops. this is from the hackernews thread
His complaint seriously backfired here, because it makes working on a chalkboard sound epic. The act of rubbing one rock against another becomes ascendance into the highest realms of thought? That’s fuckin’ alchemy, bro.