Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Viết chương trình tính kích thước cây - Đệ quy C++

Trong bài toán này, cho một cây, nhiệm vụ là tạo chương trình tính kích thước cây dùng đệ quy.

Kích thước cây là tổng số nút có trong cây.

Ví dụ:

Viết chương trình tính kích thước cây - Đệ quy C++

Kích thước cây trên là 5.

Để tìm kích thước: kích thước = kích thước cây con trái + kích thước cây con phải + 1. Gọi đệ quy cho cả hai cây con. Nếu không có cây con trả về 0.

Ví dụ minh họa

#include <iostream>
using namespace std;

class node {
public:
    int data;
    node* left;
    node* right;
};

node* insertNode(int data) {
    node* Node = new node();
    Node->data = data;
    Node->left = NULL;
    Node->right = NULL;
    return Node;
}

int findSize(node* node) {
    if (node == NULL)
        return 0;
    else
        return findSize(node->left) + 1 + findSize(node->right);
}

int main() {
    node* root = insertNode(6);
    root->left = insertNode(3);
    root->right = insertNode(7);
    root->left->left = insertNode(1);
    root->left->right = insertNode(5);
    root->right->left = insertNode(2);
    
    cout << "Kích thước cây cho trước: " << findSize(root);
    return 0;
}

Kết quả

Kích thước cây cho trước: 6