暴力:
クラスソリューション: デフ countNodes(自己、ルート:ツリーノード) - > int型: もし ないルート: リターン0 他: リターン 1 + self.countNodes(root.left)+ self.countNodes(root.right)
実行時:92ミリ秒は、すべてのpython3の提出にユーザーの85.10パーセントを打ちます
メモリ消費量:21.6メガバイトには、すべてのpython3の提出にユーザの5.26パーセントを打ちます
完全なバイナリツリーの使用の性質:
クラスソリューション: デフ countNodes(自己、ルート:ツリーノード) - > int型: もし ないルート:リターン0 left_height = 0 left_node = ルート right_height = 0 right_node = ルート しばらくleft_node: left_node = left_node.left left_height + = 1 しばらくright_node: right_node = right_node.right right_height+ = 1 であれば left_height == right_height: 戻り POW(2、left_height) - 1つの リターン 1 + self.countNodes(root.left)+ self.countNodes(root.right)
実行時:80ミリ秒は、すべてのpython3の提出にユーザーの98.16パーセントを打ちます
メモリ消費量:21.3メガバイトには、すべてのpython3の提出にユーザの5.26パーセントを打ちます
--2019.11.19