1.题目描述
输入一棵二叉树,判断该二叉树是否是平衡二叉树。
在这里,我们只需要考虑其平衡性,不需要考虑其是不是排序二叉树
2.给顾客找零41分钱,现有25分,20分,10分,5分,1分类型的硬币,怎样找零钱使得顾客收到的硬币个数最少。
动态规划:
public static int coins3(int n){
if(n<1) return -1;
int[] dp=new int[n+1];//当前所需最小硬币数量
dp[0]=0;
dp[1]=1;
for(int i=1;i<=n;i++){
// dp[n]=Math.min(dp[n-25], dp[]);
int min=0;
if(i>=1)min=Math.min(dp[i-1],min);
if(i>=5)min=Math.min(dp[i-5],min);
if(i>=20)min=Math.min(dp[i-20],min);
if(i>=25)min=Math.min(dp[i-25],min);
dp[i]=min+1;
}
return dp[n];
}
3.判断两棵树是否相等
//定义一颗二叉树
public class TreeNode {
int val;
TreeNode left;
TreeNode right;
Tre