Low Level Design, Object Oriented, Graph Data Structure, Hashmap, Interview Questions.
srcNode.uid in self.adj_list and \ dstType in self.adj_list[srcNode.uid]: return list(self.adj_list[srcNode.uid][dstType]) return [] def deleteNode(self, node:Node): # Delete a node # Delete all child edges and orphan nodes for _, dstNodes in dict(self.adj_list[node.uid]).items(): for dstNode in