自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

肉丸不肉

屏上得来终觉浅,绝知此事要躬行❤

  • 博客(809)
  • 资源 (5)
  • 收藏
  • 关注

原创 贪心题目汇总

分发饼干不重叠的区间个数 区间调度问题用最少数量的箭引爆气球 区间调度问题根据身高重建队列买卖股票的最佳时机买卖股票的最大收益 II种植花朵判断子序列非递减数列最大子序和划分字母区间...

2020-03-16 16:54:36 231

原创 LeetCode 763. Partition Labels(划分字母区间)

字符串 S 由小写字母组成。我们要把这个字符串划分为尽可能多的片段,同一个字母只会出现在其中的一个片段。返回一个表示每个字符串片段的长度的列表。示例 1:输入: S = "ababcbacadefegdehijhklij"输出: [9,7,8]解释:划分结果为 "ababcbaca", "defegde", "hijhklij"。每个字母最多出现在一个片段中。像 "ababcba...

2020-03-16 16:49:16 212

原创 LeetCode 53. Maximum Subarray(最大子序和)

Given an integer array nums, find the contiguous subarray (containing at least one number) which has the largest sum and return its sum.Example:Input: [-2,1,-3,4,-1,2,1,-5,4],Output: 6Explanation:...

2020-03-16 16:11:08 131

原创 LeetCode 665. Non-decreasing Array(非递减数列)

题目描述:判断一个数组是否能最多只修改一个数就成为非递减数组。 public boolean checkPossibility(int[] nums) { if(nums.length <= 1) return true; //修改次数 int count = 0; for(int i = 1; i < nums.l...

2020-03-16 16:00:37 226

原创 LeetCode 392. Is Subsequence(判断子序列)

s = "abc", t = "ahbgdc"Return true.不可改变字符的相对位置 public boolean isSubsequence(String s, String t) { //双指针法 int si = 0, ti = 0; char[] snew = s.toCharArray(), tnew = t.toCha...

2020-03-16 15:41:10 208

原创 LeetCode 605. Can Place Flowers(种植花朵)

题目描述:flowerbed 数组中 1 表示已经种下了花朵。花朵之间至少需要一个单位的间隔,求解是否能种下 n 朵花。有两种情况可种花:000001/ 100 public boolean canPlaceFlowers(int[] flowerbed, int n) { if(flowerbed.length == 0) return false; ...

2020-03-16 15:31:59 270

原创 LeetCode 122. Best Time to Buy and Sell Stock II(买卖股票的最大收益 II)

可以进行多次交易,多次交易之间不能交叉进行,求总利益。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。对于 [a, b, c, d],如果有 a <= b <= c <= d ,那么最大收益为 d - a。而 d - a = (d - c) + (c - b) + (b - a) ,因此当访问到一个 prices[i] 且 p...

2020-03-16 15:22:48 179

原创 LeetCode 121. Best Time to Buy and Sell Stock(买卖股票的最佳时机)

只允许交易一次,交易一次包含买入和卖出,求最大利益我们来假设自己来购买股票。随着时间的推移,每天我们都可以选择出售股票与否。那么,假设在第 i 天,如果我们要**在今天卖股票**,那么我们能赚多少钱呢?显然,如果我们真的在买卖股票,我们肯定会想:如果我是**在历史最低点买的股票就好了!**太好了,在题目中,我们只要用一个变量记录一个历史最低价格 minprice,我们就可以假...

2020-03-16 15:17:37 138

原创 LeetCode 406. Queue Reconstruction by Height(根据身高重建队列)

题目描述:一个学生用两个分量 (h, k) 描述,h 表示身高,k 表示排在前面的有 k 个学生的身高比他高或者和他一样高。 public int[][] reconstructQueue(int[][] people) { if(people.length == 0 || people[0].length == 0) { return new int...

2020-03-16 14:55:34 206

原创 LeetCode 452. Minimum Number of Arrows to Burst Balloons(用最少数量的箭引爆气球)

题目描述:气球在一个水平数轴上摆放,可以重叠,飞镖垂直投向坐标轴,使得路径上的气球都被刺破。求解最小的投飞镖次数使所有气球都被刺破。如果最多有 n 个不重叠的区间,那么就至少需要 n 个箭头穿透所有区间箭头如果碰到气球的边界气球也会爆炸,所以说相当于区间的边界触碰也算重叠: public int findMinArrowShots(int[][] points) { ...

2020-03-16 14:26:29 237

原创 LeetCode 435. Non-overlapping Intervals(无重叠区间)

题目描述:计算让一组区间不重叠所需要移除的区间个数。—区间调度问题先计算最多能组成的不重叠区间个数,然后用区间总个数减去不重叠区间的个数。在每次选择中,区间的结尾最为重要,选择的区间结尾越小,留给后面的区间的空间越大,那么后面能够选择的区间个数也就越大。按区间的结尾进行排序,每次选择结尾最小,并且和前一个区间不重叠的区间。边界相同并不算相交 public int eraseO...

2020-03-16 14:16:58 349

原创 LeetCode 455. Assign Cookies(分发饼干)

题目描述:每个孩子都有一个满足度 grid,每个饼干都有一个大小 size,只有饼干的大小大于等于一个孩子的满足度,该孩子才会获得满足。求解最多可以获得满足的孩子数量。限制值:饼干的size期望值:满足的孩子数最多每次选择时,选择在对限制值同等贡献量的情况下,对期望值贡献最大的数据 public int findContentChildren(int[] g, int[] s)...

2020-03-16 13:18:23 215

原创 二分查找题目汇总

一、二分查找入门一个基础+四个变形的入门二、LeetCode题目2.1 基础题目二分查找在排序数组中查找元素的第一个和最后一个位置寻找比目标字母大的最小字母x的平方根2.2 进阶题目(未彻底懂)有序数组的单一元素第一个错误版本寻找旋转排序数组中的最小值...

2020-03-15 21:18:17 345

原创 LeetCode 153. Find Minimum in Rotated Sorted Array(寻找旋转排序数组中的最小值)

假设按照升序排序的数组在预先未知的某个点上进行了旋转。( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。请找出其中最小的元素。你可以假设数组中不存在重复元素。示例 1:输入: [3,4,5,1,2]输出: 1示例 2:输入: [4,5,6,7,0,1,2]输出: 0 旋转完后 前面是大的数组,后面是小的数组,表示...

2020-03-15 21:12:44 206

原创 LeetCode 278. First Bad Version(第一个错误版本)

假设你有 n 个版本 [1, 2, ..., n],你想找出导致之后所有版本出错的第一个错误的版本。你可以通过调用 bool isBadVersion(version) 接口来判断版本号 version 是否在单元测试中出错。实现一个函数来查找第一个错误的版本。你应该尽量**减少对调用 API 的次数。**示例:给定 n = 5,并且 version = 4 是第一个错误的版本。调...

2020-03-15 21:01:07 204

原创 LeetCode 540. Single Element in a Sorted Array(有序数组中的单一元素)

给定一个只包含整数的有序数组,每个元素都会出现两次,唯有一个数只会出现一次,找出这个数。O(log n)时间复杂度和 O(1)空间复杂度若时间复杂度为O(logn),则不能遍历整个数组,otherwise为O(n)若用位运算-异或,时间复杂度为O(n)数组中元素总个数为奇数个single element 元素肯定位于偶数index处 public int single...

2020-03-15 20:43:37 257

原创 LeetCode 69. Sqrt(x) (x的平方根)

实现 int sqrt(int x) 函数。计算并返回 x 的平方根,其中 x 是非负整数。由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。示例 1:输入: 4输出: 2示例 2:输入: 8输出: 2说明: 8 的平方根是 2.82842..., 由于返回类型是整数,小数部分将被舍去。二分查找本题是二分查找第四种变体的应用:找最后一个小...

2020-03-14 19:52:13 231

原创 LeetCode 744. Find Smallest Letter Greater Than Target(寻找比目标字母大的最小字母)

给定一个只包含小写字母的有序数组letters 和一个目标字母 target,寻找有序数组里面比目标字母大的最小字母。数组里字母的顺序是循环的。举个例子,如果目标字母target = 'z' 并且有序数组为 letters = ['a', 'b'],则答案返回 'a'。示例:输入:letters = ["c", "f", "j"]target = "a"输出: "c"输入:...

2020-03-14 19:23:52 215

原创 LeetCode 34. Find First and Last Position of Element in Sorted Array(在排序数组中查找元素的第一个和最后一个位置)

Given an array of integers nums sorted in ascending order, find the starting and ending position of a given target value.Your algorithm’s runtime complexity must be in the order of O(log n).If the...

2020-03-14 17:46:16 201

原创 LeetCode 704. Binary Search(二分查找)

Given a sorted (in ascending order) integer array nums of n elements and a target value, write a function to search target in nums. If target exists, then return its index, otherwise return -1.Exam...

2020-03-14 17:44:16 185

原创 二分查找(Binary Search)入门:一道简单题+四道变形题

int binary_search(int[] nums, int target) { int left = 0, right = nums.length - 1; while(left <= right) { int mid = left + (right - left) / 2; if (nums[mid] < target) {...

2020-03-14 17:41:34 444

原创 关于Java中Arrays.copyOfRange()的方法

首先引用 import java.util.*;Arrays.copyOfRange(int[] original, int from, int to)第一个参数表示源数组第二个参数表示开始位置(取得到)第三个参数表示结束位置(取不到)int a[] = new int[] { 18, 62, 68, 82, 65, 9 };int[] b = Arrays.copyOfRan...

2020-03-13 17:08:13 906

原创 Java中Stack和Queue的常用方法汇总

一、Stack常用方法 Stack stack = new Stack<>(); boolean empty() 测试堆栈是否为空。 E peek() 查看堆栈顶部的对象,但不从堆栈中移除它。 E pop() 移除堆栈顶部的对象,并作为此函数的值返回该对象。 E push(E item) ...

2020-03-13 17:02:15 2170

原创 Java集合HashSet和HashMap常用方法总结

一、HashSet集合的方法 boolean add(E e) 如果此 set 中尚未包含指定元素,则添加指定元素。 void clear() 从此 set 中移除所有元素。 Object clone() 返回此 HashSet 实例的浅表副本:并没有复制这些元素本身。 boolean contains(Object ...

2020-03-13 16:49:22 904

原创 Java集合List详细用法

一、常用方法List常用方法A:添加功能boolean add(E e):向集合中添加一个元素void add(int index, E element):在指定位置添加元素boolean addAll(Collection<? extends E> c):向集合中添加一个集合的元素。B:删除功能void clear():删除集合中的所有元素E remove(in...

2020-03-13 16:31:43 587

原创 Java集合Connection接口和Map接口

一、宏观看Java集合Java集合就像一个容器,可以存储任何类型的数据,也可以结合泛型来存储具体的类型对象。在程序运行时,Java集合可以动态的进行扩展,随着元素的增加而扩大。在Java中,集合类通常存在于java.util包中。Java集合主要由2大体系构成,分别是Collection体系和Map体系,其中Collection和Map分别是2大体系中的顶层接口。Collection主要有...

2020-03-13 16:08:58 794

原创 LeetCode 128. Longest Consecutive Sequence(最长连续子序列)

Given an unsorted array of integers, find the length of the longest consecutive elements sequence.Your algorithm should run in O(n) complexity.Example:Input: [100, 4, 200, 1, 3, 2]Output: 4Exp...

2020-03-13 14:29:23 199

原创 LeetCode 594. Longest Harmonious Subsequence(最长和谐子序列)

Example 1:Input: [1,3,2,2,5,2,3,7]Output: 5Explanation: The longest harmonious subsequence is [3,2,2,2,3].需要统计“个数”—hashmap public int findLHS(int[] nums) { HashMap<Integer, Inte...

2020-03-13 14:12:27 195

原创 LeetCode 217. Contains Duplicate(存在重复元素)

Example 1:Input: [1,2,3,1]Output: trueExample 2:Input: [1,2,3,4]Output: falseExample 3:Input: [1,1,1,3,3,4,3,2,4,2]Output: trueHashSet 去重,判断是否存在重复元素写法一:用contains(key) public boolean...

2020-03-13 13:45:12 230

原创 LeetCode 1. Two Sum(两数之和,返回索引)

法一、递增排序+双指针时间复杂度为O(NlogN),空间复杂度为O(1)法二、HashMap时间复杂度为O(N),空间复杂度为O(N)空间换时间 public int[] twoSum(int[] nums, int target) { HashMap<Integer, Integer> map = new HashMap<>(); ...

2020-03-13 13:39:55 224

原创 哈希表原理+题目总结

哈希表是一种数据结构,它使用哈希函数组织数据,以支持快速插入和搜索。哈希表的关键思想是使用哈希函数将键映射到存储桶哈希表使用 O(N) 空间复杂度存储数据,并且以 O(1) 时间复杂度求解问题。哈希函数/散列函数冲突解决有两种不同类型的哈希表:哈希集合和哈希映射。哈希集合是集合数据结构的实现之一,用于存储非重复值。使用哈希集查重哈希映射是映射 数据结构的实现之一,...

2020-03-13 13:29:24 660

原创 树专题经典题目+方法总结

一、二叉树(Binary Tree)1.1 二叉树的遍历题目(前序、后序、中序、层次)后序遍历 = 删除树中结点当你删除一个节点时,你将首先删除它的左节点和它的右边的节点,然后再删除节点本身。层次遍历使用 BFS 实现,利用的就是 BFS 一层一层遍历的特性;而前序、中序、后序遍历利用了 DFS 实现。前中后序遍历的三种方法:递归、迭代、颜色标记法层次遍历方法:使用 BFS 进行层...

2020-03-12 17:47:13 914

原创 LeetCode 677. Map Sum Pairs(键值映射)

Implement a MapSum class with insert, and sum methods.For the method insert, you'll be given a pair of (string, integer). The string represents the key and the integer represents the value. If the k...

2020-03-12 17:02:10 164

原创 LeetCode 208. Implement Prefix Tree(实现前缀树)

Implement a trie with insert, search, and startsWith methods.Example:Trie trie = new Trie();trie.insert("apple");trie.search("apple"); // returns truetrie.search("app"); // returns false...

2020-03-12 16:51:29 123

原创 前缀树

一、什么是前缀树?前缀树是N叉树的一种特殊形式。通常来说,一个前缀树是用来存储字符串的。前缀树的每一个节点代表一个字符串(前缀)。每一个节点会有多个子节点,通往不同子节点的路径上有着不同的字符。子节点代表的字符串是由节点本身的原始字符串,以及通往该子节点路径上所有的字符组成的。下面是前缀树的一个例子:在上图示例中,我们在节点中标记的值是该节点对应表示的字符串。例如,我们从根节点开始,选择第...

2020-03-11 17:28:13 418

原创 LeetCode 501. Find Mode in Binary Search Tree(二叉搜索树中的众数集)

Given a binary search tree (BST) with duplicates, find all the mode(s) (the most frequently occurred element) in the given BST.For example:Given BST [1,null,2,2], 1 \ 2 / 2 ...

2020-03-11 16:58:30 176

原创 LeetCode 530. Minimum Absolute Difference in BST(二叉搜索树的最小绝对差)

Given a binary search tree with non-negative values, find the minimum absolute difference between values of any two nodes.Example:Input: 1 \ 3 / 2Output:1Explanation:The ...

2020-03-11 16:45:04 183

原创 653. Two Sum IV - Input is a BST(两数之和,输入为BST)

//中序遍历-递增序列,双指针 List<Integer> res = new ArrayList<>(); public boolean findTarget(TreeNode root, int k) { if(root == null) return false; inOrder(root);...

2020-03-11 16:35:01 185

原创 LeetCode 109. Convert Sorted List to Binary Search Tree(有序链表转换为二叉搜索树)

public TreeNode sortedListToBST(ListNode head) { //链表没有结点 if(head == null) return null; //链表只有一个结点 if(head.next == null) return new TreeNode(head.val); //找...

2020-03-11 16:23:36 167

原创 LeetCode 538. Convert BST to Greater Tree(把二叉搜索树转换为累加树)

Example:Input: The root of a Binary Search Tree like this: 5 / \ 2 13Output: The root of a Greater Tree like this: 18 / \ ...

2020-03-11 15:58:57 186

国科大人工智能学院图像处理课程考试复习资料(彭思龙老师与杨戈老师共同授课)

资料清单: 1.《数字图像处理》第三版书的知识点总结 2. 19年考试范围、20年考试范围 3. 19年考试原题(图片版)

2020-12-31

Python人脸识别用到的库的文件工具

Python人脸识别用到的库的文件工具,dlib库,opencv库,numpy库的文件

2019-02-23

简单搜索引擎+人脸识别源代码

简单搜索引擎+人脸识别登录注册源代码,Python

2019-02-23

微信小程序—自定义模态框

微信小程序自定义模态框插件资源,自用成功,欢迎下载。

2019-02-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除