上一页 1 ··· 14 15 16 17 18 19 20 21 22 ··· 29 下一页
摘要: 回溯算法: public final boolean exist(char[][] board, String word) { if (board == null || word == null || word.length() > board.length * board[0].length) { 阅读全文
posted @ 2020-06-30 22:04 牛有肉 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 暴力解法: public final boolean canPartition1(int[] nums) { //边界 if (nums == null || nums.length < 2) { return false; } //剪枝 int sum = 0; int max = 0; for 阅读全文
posted @ 2020-06-30 20:52 牛有肉 阅读(230) 评论(0) 推荐(0) 编辑
摘要: 记忆化递归: int max = 0; public int lenLongestFibSubseq(int[] A) { int[][] cache = new int[A.length][A.length]; for (int i = 0; i < A.length - 1; i++) { fo 阅读全文
posted @ 2020-06-28 23:47 牛有肉 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 借助全局变量 max 存储全局最优解,遍历以所有节点为头结点的子树。 static final int LEFT = -1; static final int RIGHT = 1; int max = 0; public final int longestZigZag(TreeNode root) 阅读全文
posted @ 2020-06-28 21:18 牛有肉 阅读(281) 评论(0) 推荐(0) 编辑
摘要: 解题分两步。第一步从后向前遍历,对于每个元素,寻找位于其后且大于该元素的最小值与其交换位置;第二步将交换位置元素的后续元素进行升序排列。 /** * @Author Niuxy * @Date 2020/6/27 12:04 上午 * @Description 从后开始,将更后面的且大于该元素的最小 阅读全文
posted @ 2020-06-27 00:22 牛有肉 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 双指针解法为两个指针,一个指向头元素,一个指向尾元素。两个指针逐步向中间靠拢并比较路过的元素: /** * @Author Niuxy * @Date 2020/6/23 8:22 下午 * @Description 双指针 */ public final boolean isPalindrome( 阅读全文
posted @ 2020-06-24 00:06 牛有肉 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 只需要遍历一次,一旦遇到不相等的字符,比较剩余字符即可。 public static boolean oneEditAway(String first, String second) { int firstLen=first.length(); int secondLen=second.length 阅读全文
posted @ 2020-06-22 23:54 牛有肉 阅读(174) 评论(0) 推荐(0) 编辑
摘要: 首先一个错误的暴力解法,加深对解空间结构的认识: /** * @Author Niuxy * @Date 2020/6/21 11:30 上午 * @Description 解决问题时先推导一下,问题是否可以被自己解决。 * 若果不行,尝试转化问题。 * 比如找出所有递增序列,并按长度计数 */ p 阅读全文
posted @ 2020-06-22 00:55 牛有肉 阅读(352) 评论(0) 推荐(0) 编辑
摘要: 关键在于如何定义问题进行分治: 1. 问题的定义必须可以覆盖解空间。 2. 问题的解可由子问题的解表示,也就是状态转移关系。 划分问题,无非就是:按区间划分,找出区间与区间的关系,最后的问题覆盖整个问题入参区间;按点划分,找出点与点的关系,最后合并所有点的结果覆盖整个问题入参区间。 对于解题来说,无 阅读全文
posted @ 2020-06-17 22:00 牛有肉 阅读(331) 评论(0) 推荐(0) 编辑
摘要: public final int findLongestChain(int[][] pairs) { sort(pairs); int[] dp=new int[pairs.length]; dp[0]=1; int maxRe=0; for(int i=1;i<dp.length;i++){ in 阅读全文
posted @ 2020-06-16 23:28 牛有肉 阅读(190) 评论(0) 推荐(0) 编辑
上一页 1 ··· 14 15 16 17 18 19 20 21 22 ··· 29 下一页