做网站容易还是做小程序容易,网络营销是什么经营模式,微商城怎么开发,wordpress4.7.10学习目标#xff1a;
60天训练营打卡计划#xff01;
学习内容#xff1a;
738.单调自增的数字
听不懂的时候就到该动手了。必须要从后向前操作#xff0c;才能把压力逐级传给最前面的这一位。入如#xff1a;322
class Solution {// java中的String不能修改#xf…学习目标
60天训练营打卡计划
学习内容
738.单调自增的数字
听不懂的时候就到该动手了。必须要从后向前操作才能把压力逐级传给最前面的这一位。入如322
class Solution {// java中的String不能修改需要StringBuilder。public int monotoneIncreasingDigits(int n) {String snum Integer.toString(n);StringBuilder sb new StringBuilder(snum);int flag snum.length();// 为什么要从后向前遍历呢// 例如332这种数只有先变为322才能把第一位变为2。// 对sb修改则对sb操作for(int i snum.length() - 1; i 0; i--){int pre sb.charAt(i-1) - 0;if(sb.charAt(i) sb.charAt(i-1)){// System.out.println((char)pre - 1);sb.setCharAt(i - 1,(char)(pre - 1 0));flag i;}}for(int i flag; i snum.length(); i){sb.setCharAt(i, 9);}return Integer.parseInt(sb.toString());}
}968.监督二叉树
我们可以对二叉树中的节点状态做一个定义 0无覆盖 1.有摄像头 2.有覆盖 其中0和2合到一起就是没有摄像头的所有情况整个树的所有节点情况可以分为4种 1.左右子节点都有覆盖时其根节点是无覆盖的状态。 2.左右子节点至少一个是无覆盖的状态则根节点必须是有摄像头的状态。 3.左右子节点至少有一个是有摄像头时根节点一定是有覆盖的。 4.root节点的在左右子节点时有覆盖的root节点一定要设置为有摄像头的状态因为本题涉及到了左右子节点的信息上报给根节点的过程所以使用后序遍历左右中。可能会出现左右节点既有0又有1的情况所以优先处理放摄像头的策略。否则根节点可能会被放为2。事例如上图
class Solution {int res 0;private int traversal(TreeNode root){if(root null) return 2;int left traversal(root.left);int right traversal(root.right);if(left 2 right 2) return 0;if(left 0 || right 0){res;return 1;}if(left 1 || right 1) return 2;return -1;}public int minCameraCover(TreeNode root) {if(traversal(root) 0) res;return res;}
}学习时间
上午l一小时下午一个半小时学习KMP算法整理文档半小时。