Computer >> Máy Tính >  >> Lập trình >> C ++

Sản phẩm của các nút ở cấp độ thứ k trong một cây được biểu diễn dưới dạng chuỗi trong C ++

Được đưa ra với cây các nút với dữ liệu ở định dạng chuỗi và nhiệm vụ là tìm tích của các nút ở mức thứ k trong một cây nhị phân. Mỗi nút của cây chứa ba thứ, tức là phần dữ liệu, con trỏ bên trái cho cây con bên trái và con trỏ bên phải cho cây con bên phải.

Mức của cây nhị phân bắt đầu từ số 0 và nó có thể đi đến ‘n’, có thể là bất kỳ số dương nào. Vì vậy, chúng ta được cung cấp với mức ‘k’ và chương trình phải tính tích số của các nút ở mức ‘k’ đã cho.

Trong cây nhị phân, giả sử chúng ta được cho với giá trị k =2

Vì vậy, các nút ở cấp 2 là - 40, 50, 60

Sản phẩm =40 * 50 * 60 =1.20.000

Sản phẩm của các nút ở cấp độ thứ k trong một cây được biểu diễn dưới dạng chuỗi trong C ++

Đầu vào

 (1 (2 (3 () ()) (4 () (5 () ()))) (6 (7 () ()) (8 () ()))) K =1  

Đầu ra

 tích của các nút ở cấp k =12 

Đầu vào

 (0 (5 (6 () ()) (4 () (9 () ()))) (7 (1 () ()) (3 () ()))) "k =2 

Đầu ra

 tích của các nút ở cấp k =72 

Thuật toán

 StartBước 1 → Khai báo hàm tính toán các nút ở mức thứ k int product (string tree, int k) Khai báo int level =-1 Khai báo int product =1 Khai báo int size =tree.length () Loop For int i =0 và i  

Ví dụ

 #include  using namespace std; // tìm sản phẩm ở sản phẩm cấp thứ k (cây chuỗi, int k) {int level =-1; int product =1; int size =tree.length (); for (int i =0; i