Tehtäväsi on laskea, montako solmua on annetussa binääripuussa tietyllä tasolla. Puun juuri on tasolla 1, sen lapset ovat tasolla 2, jne. Voit olettaa, että puussa on enintään 100 solmua.
Tehtäväpohjassa on esimerkkinä seuraava puu:
Python
Toteuta tiedostoon samelevel.py
funktio count
, joka palauttaa solmujen määrän.
from collections import namedtuple def count(node, level): # TODO if __name__ == "__main__": Node = namedtuple("Node", ["left", "right"]) tree = Node(None,Node(Node(None,None),Node(None,None))) print(count(tree,1)) # 1 print(count(tree,2)) # 1 print(count(tree,3)) # 2 print(count(tree,4)) # 0
Java
Toteuta tiedostoon SameLevel.java
metodi count
, joka palauttaa solmujen määrän.
public class SameLevel { public int count(Node node, int level) { // TODO } public static void main(String[] args) { SameLevel s = new SameLevel(); Node tree = new Node(null, new Node(new Node(null,null), new Node(null,null))); System.out.println(s.count(tree,1)); // 1 System.out.println(s.count(tree,2)); // 1 System.out.println(s.count(tree,3)); // 2 System.out.println(s.count(tree,4)); // 0 } }