answersLogoWhite

0

The number of nodes in any subtree is the number of nodes in its left subtree, plus the number of nodes in its right subtree, plus one, so you can use a recursive algorithm and start at the root.

unsigned intbinarytree_count_recursive(const node *root)

{

unsigned int count = 0;

if (root != NULL) {

count = 1 + binarytree_count_recursive(root->left)

+ binarytree_count_recursive(root->right);

}

return count;

}

User Avatar

Wiki User

14y ago

What else can I help you with?

Continue Learning about Engineering

Program to count number of leaf node in binary tree in c plus plus?

Add the following recursive method to your binary tree's node class: size_t Node::count_leaves() { if (!left && !right) return 1; // this node is a leaf size_t count = 0; if (left) count += left-count_leaves(); // count leaves on left if (right) count += right-leaves(); // count leaves on right; return count; // return total leaves. } To count the leaves of the entire tree, call the method on the root node of the tree. To count the leaves of a subtree, call the method on the root node of the subtree.


How many flip flops will be complemented in a 10 bit binary counter to reach the next count after 1001101111?

To determine how many flip-flops will be complemented in a 10-bit binary counter to go from the binary number 1001101111 (which is 635 in decimal) to the next count (1001110000, or 636 in decimal), we look at the binary representation. The least significant bit (LSB) changes from 1 to 0, and the next bit (the second LSB) changes from 1 to 0, leading to a carry that causes the third LSB to change from 1 to 0 as well. Thus, 3 flip-flops are complemented in total.


What is the algorithm for finding the number of binary digits required to represent a positive decimal integer?

Algorithm bit_count is:Input: an integer n, such that n >= 0Output: the minimum number of binary digits (bits) required to represent nlet count := 0;repeat {n := n / 2; // integer division: ignore any remaindercount := count + 1;} until n = 0;return count;This works because each binary digit represents an increasing power of 2, starting from 2^0. Thus if we repeatedly divide a value by 2 until the result is 0, the total number of divisions tells us the minimum number of bits required to represent the value.Take the value 42 as an example:42 / 2 = 2121 / 2 = 10 (r 1)10 / 2 = 55 / 2 = 2 (r 1)2 / 2 = 11 / 2 = 0 (r 1)That's 6 divisions in total so we need at least 6 binary digits to represent 42 in binary. Given that 42 is 101010 in binary, this is correct.Let's try 31:31 / 2 = 15 (r 1)15 / 2 = 7 (r 1)7 / 2 = 3 (r 1)3 / 2 = 1 (r 1)1 / 2 = 0 (r 1)5 divisions so 5 bits. 31 in binary is 11111, so that's also correct. 11111 is also the maximum value we can represent with just 5 bits so it follows that 32 would need 6 bits:32 / 2 = 1616 / 2 = 88 / 2 = 44 / 2 = 22 / 2 = 11 / 2 = 0 (r 1)QED


How do you write an if-else statement that increments the value of count by 1 if the value of total is evenly divisible by four or five and increments the value of count by 2 otherwise?

Here's a code snippet that solves that problem. if((total%5==0) (total%4==0)) { count += 1; } else { count += 2; }


Write c plus plus program to find all number from 112 to 212 with the cumulative total?

int total = 0; int n; for( n = 112; n <= 212; ++n) { total += n; } printf("%d\n", total);

Related Questions

What is the total number of all binary strings that do not contain the substring "010"?

The total number of all binary strings that do not contain the substring "010" is 2n1, where n is the length of the binary string.


Do questions I answered before I joined The Initiates Program count towards my answer questions mission total?

No, questions that you answered before joining The Initiates Program do not count towards your total for the answering questions mission. Only answers from the date you begin the mission count towards your total. You can check your total number of answers by clicking on "My contributions" on the blue menu and filtering to "Answers (new)".


What is the modulus of a five-stage binary counter?

32 is the modulus. Modulus means the total number of counts. Maximum count of a five stage binary counter would be 11111 or 2^4 + 2^3+2^2+2^1+2^0 = 31 plus the count of zero = 32.


Program to count number of leaf node in binary tree in c plus plus?

Add the following recursive method to your binary tree's node class: size_t Node::count_leaves() { if (!left && !right) return 1; // this node is a leaf size_t count = 0; if (left) count += left-count_leaves(); // count leaves on left if (right) count += right-leaves(); // count leaves on right; return count; // return total leaves. } To count the leaves of the entire tree, call the method on the root node of the tree. To count the leaves of a subtree, call the method on the root node of the subtree.


What is the formula that will define the total number of binary number combination that can be made when given the number of binary bits available?

Two to the power of the amount of available digits.


A combination of two number in math can be called?

The Sum or Total.


What count of the total number of atoms in NaCL?

3


What is the total number of Upanishads?

According to Muktika Upanishad,total number of Upanishads count upto 108.


What is the root word for recount?

The root word for "recount" is "count," which means to determine the total number of something.


How can one effectively count dominoes?

To effectively count dominoes, arrange them in a line or grid, then count the number of dots on each domino. Add up the total number of dots to get the final count.


What is the name of the number that shows how many?

The count The total The sum


How do you apply numbers outside of the parenthesis to the total count?

When applying numbers outside of parentheses to a total count, you typically multiply the total count by the number outside the parentheses. For example, if you have a total count of 5 in parentheses and a number 3 outside, you would calculate it as 5 x 3, resulting in 15. This method is commonly used in mathematical expressions and calculations involving grouping symbols.