LeetCode 1624两个相同字符之间的最长子字符串(java)
LeetCode 1624两个相同字符之间的最长子字符串(java)
class Solution {
public int maxLengthBetweenEqualCharacters(String s) {
int size = s.length();
int res = -1;
for(int start = 0; start < size - 1; start++) {
for(int end = start + 1; end < size; end++) {
char [] sb = s.toCharArray();
if(sb[start] == sb[end])
res = Math.max(res, end - start - 1);
}
}
return res;
}
}
LeetCode 1624两个相同字符之间的最长子字符串(java)相关教程
LeetCode 1512好数对的数目(java)
LeetCode 1512好数对的数目(java) class Solution { public int numIdenticalPairs(int[] nums) { int res =0, len = nums.length; if(len 1) { for(int i = 0; i len; i++) { for(int j = i + 1; j len; j++){ if(nums[i] == nums[j]) res ++; } } return re
leetcode-40-组合总和回溯算法记录
leetcode-40-组合总和回溯算法记录 前言 很少写关于leetcode相关算法的解法,这篇则是由于回溯的剪枝策略过于优秀,我在一段时间都没想到,于是感觉可以记录下来,加深自己印象的同时分享一下。 正文 题目就是leetcode的第40道题,组合总和2,描述如下: 给定
leetcode算法题29——两数相除
leetcode算法题29——两数相除 两数相除(中等) 给定两个整数,被除数 dividend 和除数 divisor。将两数相除,要求不使用乘法、除法和 mod 运算符。 返回被除数 dividend 除以除数 divisor 得到的商。 整数除法的结果应当截去(truncate)其小数部分,例如:
记录*:LeetCode 222
记录*:LeetCode 222 这道题我没做出来,十分挫败。看了答案之后,不仅被作者精妙的思路折服,并且还学习到了一些小技巧。 这里直接贴上作者原文 上面是我的错误思路。我的思路是,通过最左边的路径找到树的高度。然后寻求所有高度为 h-1的节点,最后再计算缺
每日一道Leetcode—— 删除链表的倒数第N个节点
每日一道Leetcode—— 删除链表的倒数第N个节点 题目: 我的解法: 思路:从第一个结点开始,向后遍历每一个结点,判断其是否为倒数第n个结点。如果不是,则将开始遍历的结点添加到答案结点的下一个;如果是倒数第n个结点,则跳过当前起始结点,并且停止遍历
leetcode844,难度easy
leetcode844,难度easy 一、题目 二、解法 用栈的思想,新建一个list temp,对给定字符串S分两种情况: 1、当前字符!='#'时,temp加入当前字符 2、当前字符==’#‘时,temp pop最顶端的字符(前提非空) 三、代码 import operatorclass Solution: def backspa
LeetCode 110. 平衡二叉树思考分析
LeetCode 110. 平衡二叉树思考分析 给定一个二叉树,判断它是否是高度平衡的二叉树。 本题中,一棵高度平衡二叉树定义为: 一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1。 示例 1: 给定二叉树 [3,9,20,null,null,15,7] 3 / 9 20 / 15 7 返回 tr
leetcode 337 打家劫舍 III
leetcode 337 打家劫舍 III 这道题真的一开始我想的是树的层次遍历,然后隔行相加,然后再取这二者的最大值。。。 但是如果碰到这个测试用例 [4,1,null,2,null,3],取第1行和第4行的结果为7,而各行求和最大结果才为6 所以就参考了一下leetcode的官方讲解 //