找出二叉树的深度
一个树的深度等于max(左子树深度,右子树深度)+1。可以使用递归实现。
假设节点为定义为 1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11. struct Node { Node* left; Node* right; }; int GetDepth(Node* root) { if (NULL == root) { return 0; } int left_depth = GetDepth(root->left); int right_depth = GetDepth(root->right); return left_depth > right_depth ? left_depth + 1 : right_depth + 1;
12. } 微软笔试题:利用天平砝码,三次将140克的盐 分成50、90克两份?
有一个天平,2克和7克砝码各一个。如何利用天平砝码在三次内将140克盐分成50,90克两份。
第一种方法:
第一次:先称 7+2克盐 (相当于有三个法码2,7,9)
第二次:称2+7+9=18克盐 (相当于有2,7,9,18四个法码)
第三次:称7+1