Tehtäväsi on laskea, montako lehteä on annetussa binääripuussa. Voit olettaa, että puussa on enintään 100 solmua.
Tehtäväpohjassa on esimerkkinä seuraava puu, jossa on kaksi lehteä:
Python
Toteuta tiedostoon leaves.py funktio count, joka palauttaa lehtien määrän.
from collections import namedtuple
def count(node):
# TODO
if __name__ == "__main__":
Node = namedtuple("Node",["left","right"])
tree = Node(None,Node(Node(None,None),Node(None,None)))
print(count(tree)) # 2
Löydät neuvoja binääripuun käsittelyyn Pythonilla kurssin materiaalista.
Java
Toteuta tiedostoon Leaves.java metodi count, joka palauttaa lehtien määrän.
public class Leaves {
public int count(Node node) {
// TODO
}
public static void main(String[] args) {
Leaves l = new Leaves();
Node tree = new Node(null,
new Node(new Node(null,null),
new Node(null,null)));
System.out.println(l.count(tree)); // 2
}
}
Löydät neuvoja binääripuun käsittelyyn Javalla kurssin materiaalista.
Huomaa, että CSES liittää tiedoston Node.java automaattisesti palautukseen, eli omassa koodissasi ei tule olla luokan Node määrittelyä.
