以下は、実行時間O(n)の可能な解決策である：

```
def count_nodes(root)：
    if not root：
        return 0
    return 1 + count_nodes(root.left) + count_nodes(root.right)
```

左と右の分岐が再帰的に処理され、cout_nodesがインクリメントされる。
Folgedes ist eine mögliche Lösung mit Laufzeit O(n):

def count_nodes(root):
    if not root:
        return 0
    return 1 + count_nodes(root.left) + count_nodes(root.right)

Es wird rekursiv der linke und der rechte Zweig abgearbeitet und dabei cout_nodes hochgezählt