- 博客(16)
- 收藏
- 关注
原创 【220309】798. 得分最高的最小轮调
题目:https://leetcode-cn.com/problems/smallest-rotation-with-highest-score/差分分析对于每一项,讨论其不同的轮调步长注意到,得分的关键是:任何「值」小于或等于「其索引」的项都可以记作一分情况一:「值」<=「其索引」步长 [ 0, i-nums[i] ] 的情况都能 +1 分步长 [ (i-nums[i]+1)%len, i ] 的情况都不计分步长 [ (i+1)%len , ] 的情况都能 +1 分情况.
2022-03-11 06:00:00
82
原创 【210831】1109. 航班预订统计
题目:https://leetcode-cn.com/problems/corporate-flight-bookings/暴力枚举每条预定记录统计每个航班的预定数差分分析每次预定的时候只有两个地方会导致预定位置数发生变化,即「预定开始的航班」 和 「预定结束的航班号+1的航班」开始的地方会导致这个地方增加m个航班,结束的地方不再需要这些位置,所以会减去m个航班。我们并不需要真的记录每个位置的状态,只需要记录有变化的位置即可,他们所持有的信息其实是一样的。在「有变化的位置」.
2022-03-11 05:00:00
178
原创 【210402】面试题 17.21. 直方图的水量
题目:https://leetcode-cn.com/problems/volume-of-histogram-lcci/问题转化最小子问题:每根柱子的水量由其左边最高的柱子和其右边最高的柱子决定短板效应:对左右的最高柱子取其较小值,与当前柱子比较高度求:数组任一边界与当前柱子围成的区间中的最大值法一:动态规划动态规划:解决重复子问题leftMax[i]:前 i 个元素中,最大的值rightMax[i]:后 i 个元素中,最大的值//官方题解class Solution { .
2022-03-05 06:00:00
207
原创 约瑟夫环问题
转载:约瑟夫环——公式法(递推公式)约瑟夫环规则N个人围成一圈,从1开始报数,杀掉报到M的人。下一个人接着从1开始报数。公式f(N,M)=(f(N−1,M)+M)f(N,M)=(f(N−1,M)+M)%Nf(N,M)=(f(N−1,M)+M)f(N,M)f(N,M)f(N,M)表示,N个人报数,每报到M时杀掉那个人,最终胜利者的编号f(N−1,M)f(N-1,M)f(N−1,M)表示,N-1个人报数,每报到M时杀掉那个人,最终胜利者的编号推导上一次:从下标0开始报数。下标0喊1.
2022-03-01 04:30:00
213
原创 【220228】1601. 最多可达成的换楼请求数目
题目:https://leetcode-cn.com/problems/maximum-number-of-achievable-transfer-requests/回溯DFS路径要设成全局变量//官方题解class Solution { //delta表示每栋楼员工净变化量 //zero表示delta中0的个数 int[] delta; int ans = 0, cnt = 0, zero, n; public int maximumRequests(int .
2022-02-28 22:00:00
89
原创 【220102】390. 消除游戏
题目:https://leetcode-cn.com/problems/elimination-game/笔记 from 【宫水三叶】约瑟夫环运用题思路一:约瑟夫环对称性由于从左往右和从右往左分别为从左端点发起,间隔删除和从右端点发起,间隔删除,因此整个删除过程在连续序列中[1,n]中具有对称性,两者最终剩余的编号在连续序列中也具有对称性。公式一f左(n)+f右(n)=n+1f_左(n) + f_右(n) = n+1f左(n)+f右(n)=n+1定义 f左(n)f_左(n)f左.
2022-02-28 06:00:00
3121
原创 【JavaScript】手写new
参考:终于懂了原型链!分析:new操作符的功能function Person(age) { this.age = age;}let p = new Person(20);p; // Person {age:20}首先创建了一个空对象p = {}__proto__属性 of p:指向其构造函数 Person 的原型对象prototype构造函数的this:绑定到新对象p上面,并执行构造函数若构造函数返回的是非引用类型,则返回该新建的对象 p;否则返回引用类型的值。手动实现.
2022-02-27 22:00:00
412
原创 【210607】494. 目标和
题目:https://leetcode-cn.com/problems/target-sum/回溯//官方题解class Solution { int count = 0; public int findTargetSumWays(int[] nums, int target) { backtrack(nums, target, 0, 0); return count; } public void backtrack(int[] .
2022-02-27 03:30:00
114
原创 【220222】1994.好子集的数目
题目:https://leetcode-cn.com/problems/the-number-of-good-subsets/状态转移DPDP:dp[i][state] 好子集的数目i: [2, i]范围内的数,i在30以内state:10个质数的选中情况逻辑:每个好子集里,每个质数最多出现一次DP基于【对于10个质数,各有 选 or 不选 的情况】对于每个数字,确定有唯一的statePD基于【对于每个元素,有 选 or 不选 的情况】选择元素的条件:state不能与i-1时の.
2022-02-22 22:00:00
51
原创 【220221】838.推多米诺
题目:https://leetcode-cn.com/problems/push-dominoes/BFS逻辑:元素倒下后,状态不再改变。每个元素对应唯一的倒下时间。//官方题解class Solution { public String pushDominoes(String dominoes) { int n = dominoes.length(); Deque<Integer> queue = new ArrayDeque<Inte.
2022-02-22 03:30:00
140
原创 【220220】717. 1比特与2比特字符
题目:https://leetcode-cn.com/problems/1-bit-and-2-bit-characters/其实第一时间想到了动态规划,但可能因为划分方式是唯一的?我的解法找规律0 √1 √00 ×01 ×10 √11 √当前第 i 位为0,只能划分为一位字符,判断下一位;当前第 i 位为1,只能划分为两位字符,判断 i+2 位;采用递归,出口【start==length时,最后一个字符为两位字符,返回false;start+1==length时,最后一.
2022-02-21 02:30:00
227
原创 【210106】547. 省份数量
题目:https://leetcode-cn.com/problems/number-of-provinces/BFS//官方题解class Solution { public int findCircleNum(int[][] isConnected) { int provinces = isConnected.length; boolean[] visited = new boolean[provinces]; int circles =.
2022-02-18 03:30:00
114
原创 【Java】变量&数据类型
概括自尚硅谷Java入门视频教程(在线答疑+Java面试真题)变量分类 by 数据类型基本数据类型(8)整数类型:byte、short、int、long浮点类型:float、double字符型:char布尔型:boolean引用数据类型类 class接口 interface数组 array了解:基本数据类型运算规则(不包含boolean)自动类型提升当容量小的数据类型的变量与容量大的数据类型的变量做运算时,结果自动提升为容量大的数据类型。(容量大小:指其表示数的范围的大小.
2022-02-15 18:00:00
235
原创 Stream流
概括自尚硅谷Java8新特性教程了解:Stream流本质:数据渠道,用于操作数据源(集合、数组等)所产生的元素序列。应用:处理集合分类:串行流stream()、并行流parallelStream()特点:Stream自己不会存储元素。Stream不会改变源对象。相反,它们会返回一个持有结果的新Stream。Stream操作是延迟执行的,即它们会等到需要结果的时候才执行。创建Stream通过Collection系列集合提供的stream()或parallelStream()L.
2022-02-15 05:30:00
515
原创 字符集与乱码
概括自尚硅谷Java入门视频教程(在线答疑+Java面试真题)了解:ASCII码数量:128个字符编码规则:只占用了一个字节的后面7位,最前面的1位统一规定为0常用:A(65)、a(97)了解:Unicode编码内容:包含世界上所有的符号规则:只规定了每个符号的二进制代码每个符号用3 or 4个字节表示了解:UTF-8和Unicode的关系:是Unicode的一种实现方式编码规则:如果编码包含n个字节,则【第一个字节的前n位为1,第一个字节的第n+1位为0,在第一个字节之.
2022-02-14 18:00:00
163
原创 Java特有の文档注释
概括自尚硅谷Java入门视频教程(在线答疑+Java面试真题)格式/** @author 指定Java程序的作者 @version 指定源文件的版本*/应用注释内容可以被JDK提供的工具Javadoc所解析,生成一套以网页文件形式体现的该程序的说明文档。格式javadoc -d 说明文档的文件夹名 -author -version 文件名.java结果生成一个文件夹,其中的index.html即说明文档。...
2022-02-14 05:30:00
184
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人