一只程序小洋
一只程序小洋
全部文章
力扣刷题
java底层学习(4)
java总结知识点(5)
js(2)
刷题经验(32)
学习路线总结(3)
学习问题解决(4)
记录跨域问题解决(3)
读书笔记(1)
归档
标签
去牛客网
登录
/
注册
一只程序小洋
全部文章
/ 力扣刷题
(共33篇)
DFS+回溯法:皇后题(51LC困难)
搜索的过程蕴含了 剪枝 的思想。「剪枝」的依据是:题目中给出的 「N 皇后」 的摆放规则:1、不在同一行;2、不在同一列;3、不在同一主对角线方向上;4、不在同一副对角线方向上。 小技巧:记住已经摆放的皇后的位置 这里记住已经摆放的位置不能像 Flood Fill 一样,简单地使用 visited...
2021-08-03
0
367
经典动态规划+实例题实战(注解)
动态规划和其它遍历算法(如深/广度优先搜索)都是将原问题拆成多个子问题然后求解,他们之间最本质的区别是,动态规划保存子问题的解,避免重复计算。解决动态规划问题的关键是找到状态转移方程,这样我们可以通过计算和储存子问题的解来求解最终问题。同时,我们也可以对动态规划进行空间压缩,起到...
2021-08-03
0
439
记录刷题笔记快慢指针:环形指针
public class Solution { public ListNode detectCycle(ListNode head) { if(head==null){ return null; } ListN...
2021-07-21
0
316
记录最小覆盖子串
1.暴力解法 (1)枚举输入字符串s的所有长度大于等于T的子串; (2)逐个判断这些子串中,那些覆盖了字符串T的所有字符; (3)在枚举的过程中,记录符合条件的,长度最短的那个子串 2.带自己备注的滑动窗口解法 class Solution { public String minW...
2021-07-21
0
292
记录递归解数字出现在递增数组的第一次和第二次位置
class Solution { public int[] searchRange(int[] nums, int target) { return recur(0, nums.length - 1, nums, target); } public int...
2021-07-21
0
334
记录在旋转数组中找到目标值(不含重复元素)
思路: 1.是先考虑mid和left的关系,如下 可以根据 nums[mid] 和 nums[left] 判断,因为我们的 mid 一定是会落在 left 和 right 之间,那如果 nums[mid] >= nums[left] 时,说明他俩落在一个数组里了,如果 nums[...
2021-07-21
0
297
记录旋转数组中查找特定的值(有重复)
思路:在无重复的基础上加一个条件 if(nums[mid]==nums[left]){ left++; continue; } 当 nums[mid] == nums[left] 时,让 left++,并退出本次循环,其余部分完全相同 class Solution...
2021-07-21
0
296
记录链表快速排序
思路就结合力扣147看代码 需要理清链表的前后关系 /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode...
2021-07-21
0
343
记录面试高频率的(215题)力扣自己的思路
1.先是快速排序,使第一个关键字找到自己的位置,然后前面是小于自己的数值,后面是大于自己的数值 2.然后通过比较关键字的值和待查找的值的大小,小于就在右边的表寻找(left+1),小于就在左边的表找(right-1) 3.循环下去就逐渐缩小可以找到满足条件的值了 class Solution ...
2021-07-21
0
262
桶排序:数组中前K个频率最高的数字
思路: 1.先使用哈希表统计数组中每个数字频率 2.统计完成后,创建一个数组,之前计算的频率作为数组的下标 3.对于出现频率不同的数字集合,存进对应的数组下标 结合代码和每一行的注解理解 //基于桶排序求解「前 K 个高频元素」 class Solution { public in...
2021-07-21
0
386
首页
上一页
1
2
3
4
下一页
末页