LeeCode
爱吃西蓝花的老张
这个作者很懒,什么都没留下…
展开
-
【LeetCode-二分查找】704.34
二分查找二分查找框架int binarySearch(int[] nums, int target) { int left = 0, right = ...; while(...) { int mid = left + (right - left) / 2; if (nums[mid] == target) { ... } else if (nums[mid] < target) {原创 2020-11-20 15:03:57 · 237 阅读 · 0 评论 -
【LeetCode-贪心】452. 用最少数量的箭引爆气球
https://leetcode-cn.com/problems/minimum-number-of-arrows-to-burst-balloons/该题目与435无重叠最小区间本质是一样的: https://zjf-bigdata.blog.csdn.net/article/details/109742324class Solution { // 等价于寻找不重叠的子区间 public int findMinArrowShots(int[][] points) { /原创 2020-11-18 18:25:31 · 192 阅读 · 0 评论 -
【LeetCode-贪心】435.无重叠最小区间
https://leetcode-cn.com/problems/non-overlapping-intervals/class Solution { public int eraseOverlapIntervals(int[][] intervals) { // 首先判断异常特殊情况 int intervalsLen = intervals.length; if (intervalsLen <= 1){return 0;}原创 2020-11-17 14:36:38 · 196 阅读 · 0 评论 -
【LeetCode-贪心】45. 跳跃游戏 II,55.跳跃游戏
我的题解:https://leetcode-cn.com/problems/jump-game-ii/solution/can-kao-guan-fang-jie-fa-xiang-xi-zhu-shi-by-zjf_/ /** 贪心算法-正向遍历,时间复杂度 O(n),空间复杂度O(1) */ public int jump(int[] nums) { // 定义最少步数,返回值 int steps = 0; // 定义当前边界。当行走在数组上的原创 2020-11-17 09:58:02 · 222 阅读 · 0 评论 -
【LeetCode-哈希表】169. 多数元素
https://leetcode-cn.com/problems/majority-element/### 解题思路此处撰写解题思路### 代码```javaclass Solution { /** 解法2:摩尔投票法,时间复杂度O(n),空间复杂度O(1) */ public int majorityElement(int[] nums) { // 假设第一个数是众数,依次往后遍历投票。不同的数字 int res = 0; // 返回结果,先置原创 2020-11-16 11:04:10 · 465 阅读 · 0 评论 -
【LeetCode-链表】142.环形链表(2)
https://leetcode-cn.com/problems/linked-list-cycle-ii//** * Definition for singly-linked list. * class ListNode { * int val; * ListNode next; * ListNode(int x) { * val = x; * next = null; * } * } */public class S原创 2020-11-13 12:03:26 · 242 阅读 · 0 评论 -
【LeetCode-哈希表】128.最长连续序列
原题连接: https://leetcode-cn.com/problems/longest-consecutive-sequence/class Solution { public int longestConsecutive(int[] nums) { int size = nums.length; if (size <= 1){ return size; } // 存在可能重复的元素,而我们注意到原创 2020-11-12 22:52:36 · 233 阅读 · 0 评论 -
【LeetCode-动态规划】5.最长回文子串
原题连接:https://leetcode-cn.com/problems/longest-palindromic-substring/class Solution { public String longestPalindrome(String s) { if (s==null){ return null; } int len = s.length(); if (len <= 1){原创 2020-11-05 16:57:45 · 775 阅读 · 0 评论 -
【LeetCode-动态规划】70.爬楼梯
原题连接: https://leetcode-cn.com/problems/climbing-stairs/class Solution { public int climbStairs(int n) { // 寻找特殊情况 if (n <= 3) return n; // 定义dp数组,明确含义: dp[台阶数] = 可以走楼梯的方法 // 寻找dp动态转移方程: dp[i] = dp[i-1] + dp[i-2]原创 2020-11-05 14:45:21 · 213 阅读 · 0 评论 -
LeetCode 72【动态规划】
class Solution { public int minDistance(String word1, String word2) { int w1len = word1.length(); int w2len = word2.length(); //定义dp数组的含义, 这里dp[i][j]的含义被定义为 Word1的前i个字符转换成Word2的前j个字符一共需要dp[i][j]步 int[][] dp = new int[w1原创 2020-10-22 11:26:11 · 280 阅读 · 0 评论 -
LeetCode 62 【动态规划】
package leecode.dynamic_programming;/**@author: 老张爱吃西蓝花@description: https://leetcode-cn.com/problems/unique-paths/@date: 2020/10/21 11:07*/public class q_62 {public static void main(String[] args) {System.out.println(solutions(45,4));}publ原创 2020-10-21 15:08:19 · 233 阅读 · 0 评论 -
LeetCode-面试题 汉诺塔问题
https://leetcode-cn.com/problems/hanota-lcci/class Solution { public void hanota(List<Integer> A, List<Integer> B, List<Integer> C) { int n = A.size(); System.out.println(n + "\t" + A.toString() +"\t"+B.toStr原创 2020-09-14 17:50:44 · 296 阅读 · 0 评论 -
LeetCode-102二叉树的层次遍历
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */class Solution { public List<List<Integer>> levelOrder(TreeNode r原创 2020-09-14 14:30:41 · 198 阅读 · 0 评论 -
LeetCode-145二叉树后序遍历
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode() {} * TreeNode(int val) { this.val = val; } * TreeNode(int val, TreeNode left, TreeNode right) { *原创 2020-09-11 17:39:44 · 190 阅读 · 0 评论 -
LeetCode-207 课程表
class Solution { public boolean canFinish(int numCourses, int[][] prerequisites) { // 1. 新建入度表、邻接表、BFS队列 int[] indegree = new int[numCourses]; List<ArrayList<Integer>> adjacency = new ArrayList<>(); Que原创 2020-08-26 19:28:02 · 167 阅读 · 0 评论 -
LeetCode-127
class Solution { public int ladderLength(String beginWord, String endWord, List<String> wordList) { //处理特殊情况: wordList中不包含endWord,直接返回0 if (!wordList.contains(endWord)) { return 0; } //因为假设所有单词具有相同的长度,原创 2020-08-25 19:38:54 · 186 阅读 · 0 评论 -
LeetCode-977有序数组的平方
def sorted_squares(a): n = len(a) # 获取2个游标,i、j,i从最后一个负数向前遍历,j从第一个非负数向后遍历 j = 0 while j<n and a[j]<0: j += 1 i = j - 1 # 开始遍历 rs = [] while 0 <= i and j < n: if a[i]**2 <=...原创 2019-12-14 17:14:55 · 220 阅读 · 0 评论 -
LeetCode-1两数之和
https://leetcode-cn.com/problems/two-sum/def twoSum(num, target): # 先定义一个空字典 dct = {} # 对num枚举,返回 i: 下标;n:值。 for i, n in emumerate(num): # 检查 dct中是否有 target-n的值,如果有那么直接返回。第一次肯定没有,到了第二次 # 继续往后...原创 2019-12-14 16:49:49 · 129 阅读 · 0 评论 -
LeetCode-3:无重复最长子串
1. 暴力穷举遍历(慢) /** * #3 * 无重复最长字符子串 * https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/description/ * @param s * @return */ /** 方法...原创 2018-09-07 18:31:17 · 235 阅读 · 0 评论