w wywiadzie, dano funkcję:drukowania określonych węzłów w w każdym etapie oblicza się za pomocą danej funkcji
f(n)= square(f(n-1)) - square(f(n-2)); for n>2
f(1) = 1;
f(2) = 2;
Here n is the level of an n-array tree. f(n)=1,2,3,5,16...
Dla każdego poziomu n
danego N-Array muszę drukowania f (n) węzła na każdym poziomie. Na przykład:
At level 1 print node number 1 (i.e. root)
At level 2 print node number 2 (from left)
At level 3 print node number 3 (from left)
At level 4 print node number 5... and so on
Jeśli number of nodes(say nl)
na każdym poziomie n
jest less than f(n)
, następnie trzeba wydrukować node number nl%f(n) counting from the left
.
Wykonałem podstawowe przejście na poziomie rzędu przy użyciu kolejki, ale utknąłem na tym, jak liczyć węzły na każdym poziomie i obsługiwać stan, gdy liczba węzłów na dowolnym poziomie n
jest less than f(n)
.
Zaproponuj sposób postępowania w przypadku pozostałej części problemu.
Co to jest "drzewo n-tablicowe"? –
@poorvankBhatia Zapraszam na wszelkie pytania. –