刷题笔记
文章平均质量分 93
快到锅里来呀
种一棵树最好的时间是十年前,其次是现在
展开
-
动态规划-子序列问题(判断子序列、不同的子序列、两个字符串的删除操作、编辑距离、回文子串、最长回文子序列)
动态规划-子序列问题(判断子序列、不同的子序列、两个字符串的删除操作、编辑距离、回文子串、最长回文子序列)原创 2023-04-07 08:00:00 · 687 阅读 · 0 评论 -
动态规划-子序列问题(最长递增子序列、最长连续递增序列。最长重复子数组。最长公共子序列、不相交的线、最大子数组和)
动态规划-子序列问题(最长递增子序列、最长连续递增序列。最长重复子数组。最长公共子序列、不相交的线、最大子数组和)原创 2023-04-05 08:00:00 · 592 阅读 · 0 评论 -
动态规划-股票问题(买卖股票的最佳时机、II、III、IV、含冷冻期、含手续费)
动态规划-股票问题(买卖股票的最佳时机、II、III、IV、含冷冻期、含手续费)原创 2023-04-03 08:00:00 · 335 阅读 · 0 评论 -
动态规划-打家劫舍 I、II、III
动态规划-打家劫舍 I、II、III原创 2023-03-25 08:00:00 · 580 阅读 · 0 评论 -
动态规划-完全背包问题(纯完全背包、零钱兑换II、组合总数 IV、零钱兑换、完全平方数、单词拆分)、纯多重背包问题
完全背包问题和01背包问题唯一不同的地方就是,每种物品有无限件。(纯完全背包、零钱兑换II、组合总数 IV、零钱兑换、完全平方数、单词拆分)、纯多重背包问题原创 2023-03-23 08:00:00 · 1115 阅读 · 2 评论 -
刷题笔记之十三(有假币、最难的问题、因子个数)
1.求正数数组的最小不可组成和2. 有假币3.继承时先调用父类的构造方法;类中的成员变量的初始化操作都在构造方法时进行4. 学会并理解装箱拆箱,注意new出来的也可以拆!!5.getDeclaredMethods()是标识类或接口的声明成员(这个表示public private 包访问权限 protected)的集合,不包括继承的成员6. 最难的问题7. 因子个数原创 2023-03-19 15:46:33 · 629 阅读 · 1 评论 -
动态规划-01背包问题(纯01背包、分割等和子集、最后一块石头的重量II、目标和、一和零)
动态规划-01背包问题(纯01背包、分割等和子集、最后一块石头的重量II、目标和、一和零)原创 2023-03-21 08:00:00 · 502 阅读 · 1 评论 -
动态规划-基础(斐波那契数、爬楼梯、使用最小花费爬楼梯、不同路径、不同路径II、整数拆分、不同的二叉搜索树)
斐波那契数、爬楼梯、使用最小花费爬楼梯、不同路径、不同路径II、整数拆分、不同的二叉搜索树动态规划问题,五步走:状态定义:确定 dp 数组,下标及其含义状态转移:初始化:遍历顺序:返回值:动态规划代码有问题分析举例推导状态转移公式打印 dp 数组日志原创 2023-03-19 08:00:00 · 507 阅读 · 1 评论 -
【刷题笔记】之滑动窗口(长度最小的子数组、水果成篮、最小的覆盖子串)
滑动窗口就是不断的调节子序列的起始位置和终止位置,从而得出想要的结果滑动窗口是用一个 for 循环来完成这个操作,并且这个 for 表示的应该是终止位置使用滑动窗口需要确定三点:窗口内是什么?窗口就是满足 sum >= targe 长度的最小的连续子数组如何移动窗口的起始位置起始位置就是 如果当前窗口的值大于 targe,窗口就要向前移动了(缩小范围)如何移动窗口的结束位置结束位置就是 for 循环中的索引原创 2023-03-09 08:00:00 · 549 阅读 · 5 评论 -
【刷题笔记】之双指针(移除元素、删除有序数组中的重复项、移动零、比较含退格的字符串、有序数组的平方)
双指针之快慢指针、双向指针原创 2023-03-07 08:00:00 · 543 阅读 · 5 评论 -
【刷题笔记】之二分查找(搜索插入位置。在排序数组中查找元素的第一个和最后一个位置、x的平方根、有效的完全平方数)
进行二分查找的前置条件:数组有序并且数组中无重复元素写二分查找题的代码,需要考虑清楚边界条件,比如应该是 while(left < right) 还是 where(left原创 2023-03-05 08:00:00 · 1112 阅读 · 2 评论 -
【刷题笔记】之牛客面试必刷TOP101(二叉树的前.中.后.层序遍历+按之字形顺序打印二叉树+二叉树的最大深度+二叉树中和为某一值的路径(一)+二叉搜索树与双向链表+判断是不是二叉搜索树)
1. 二叉树的前序遍历2.二叉树的中序遍历3.二叉树的后序遍历4.求二叉树的层序遍历5.按之字形顺序打印二叉树6.二叉树的最大深度7.二叉树中和为某一值的路径(一)8.二叉搜索树与双向链表9.判断是不是二叉搜索树原创 2022-12-26 18:00:42 · 778 阅读 · 38 评论 -
【刷题笔记】之牛客面试必刷TOP101(二分查找-I + 二维数组中的查找 + 寻找峰值 + 数组中的逆序对 + 旋转数组的最小数字 + 比较版本号)
1.二分查找-I2. 二维数组中的查找3.寻找峰值4. 数组中的逆序对5.旋转数组的最小数字6.比较版本号原创 2022-12-15 08:00:00 · 1899 阅读 · 39 评论 -
刷题笔记之十二(快到碗里来+跳台阶+变态跳台阶+不用加减乘除做加法+三角形+猴子分桃+反转部分单向链表)
1. 快到碗里来2. 跳台阶3. 变态跳台阶4.ConcurrentHashMap使用lock关键字保证线程安全;Arrays.asList返回值是List接口对象5. 字符串对象比较相等,使用equals比较内容;使用== 比较的是地址6.编译命令: javac 源文件名称.java;运行命令: java 主类名称 要传递的参数7. int类型对象成员变量赋予默认值是在,对象产生时执行,在类加载之后,不属于类加载过程8. 不用加减乘除做加法9. 三角形原创 2022-11-20 08:00:00 · 1290 阅读 · 28 评论 -
HTTPS(对称加密+非对称加密+证书)
HTTPS 也是一个应用层协议. 是在 HTTP 协议的基础上引入了一个加密层.HTTP 协议内容都是按照文本的方式明文传输的. 这就导致在传输过程中出现一些被篡改的情况.现在HTTP的页面已经很少了,主要还是因为 "运营商劫持事件"加密就是把(要传输的信息)进行一系列变换, 生成.解密就是把再进行一系列变换, 还原成.对称加密: 加密和解密使用同一个密钥非对称加密:加密和解密使用不同密钥要保证安全,那就要加密,加密简单的办法就是,对称加密。原创 2022-11-28 08:13:22 · 2034 阅读 · 6 评论 -
刷题笔记之十一 (计算字符串的编辑距离+微信红包+年终奖+迷宫问题+星际密码+数根)
1. 计算字符串的编辑距离2. 微信红包3. 双向链表修改,比如插入新的结点,一定要画图4.一颗完全二叉树第六层有9个叶结点(根为第一层),则结点个数最多有1095. 将N条长度均为M的有序链表合并,步骤是拿出N条链表的第一个元素建立小根堆,依次从堆顶取出元素,将链表其他元素依次放入堆中,进行向下调整6. 循环队列中,f为队头元素位置,r为当前队尾元素的下一个位置(书上是这么说的),则元素个数为(r-f+Max) % Max7. 快排确定第几趟排序结果,要看有几个数满足左边大右边小原创 2022-11-15 08:00:00 · 1164 阅读 · 38 评论 -
刷题笔记之十 (小易的升级之路+找出字符串中第一个只出现一次的字符+洗牌+MP3光标位置)
1.存取任意指定序号的元素和在最后进行插入和删除运算,利用顺序表存储最节省时间2. 数据结构中具有记忆功能的是栈3. 递归程序的优化一般为 尾递归优化4.二叉树遍历,前中后序遍历用到的是栈,而层序遍历用到的队列5.将两个各有n个元素的有序表归并成一个有序表,最少的比较次数是n6.每经过一次元素的交换会产生新的逆序的是快速排序7. 小易的升级之路8. 找出字符串中第一个只出现一次的字符9.设一个有序的单链表中有n个结点,现要求插入一个新结点后使得单链表仍然保持有序,则该操原创 2022-11-13 08:00:00 · 2165 阅读 · 48 评论 -
刷题笔记之七(统计每个月兔子的总数+汽水瓶+查找两个字符串a,b中的最长公共子串+公共子串计算)
1. 数据库中,count不会返回null值,max和concat可能会返回null值2. 数据库特点: 共享性高,冗余度小,安全性强,独立性强3.top是sql server中的关键字,用于求前n条数据4. 数据库使用函数进行全部扫描(数据遍历)最慢,并且函数执行本身也是需要耗时的5. 使用%作为通配符时,匹配的是0个以上的字符(包含0)6.RDBS是关系型数据库,hadoop是大数据方向的数据库不是关系型数据库7. 统计每个月兔子的总数8. 查找两个字符串a,b中的原创 2022-11-10 08:00:00 · 1979 阅读 · 35 评论 -
刷题笔记之九(查找输入整数二进制中1的个数+完全数计算+杨辉三角的变形+计算某字符出现次数)
1. 聚合查询是进行行与行的运算合并,是不能和别的列放在一块查询2. PHP数据库查询语句3. 有group by时先执行where,后执行having4. join常用两张表内连接和外连接,用一张表可以自连接5. 删除数据用delete,删除表时drop,选中数据库后,再用drop删6. IF(expr1,expr2,expr3)有点类似三目运算符,expr1为true或不为0,就是真7. IN()范围查询括号中存在的,NOT IN()范围查询不在括号中存在的,ALL表示全部都满原创 2022-11-08 08:14:26 · 959 阅读 · 46 评论 -
刷题笔记之八(字符串通配符+参数解析+计算日期到天数)
1.dateadd(datepart,number,date)函数是在日期中添加或减去指定的时间间隔2. DML数据库操作语言负责数据的增删查改3. 修改表结构的关键字都是alter table 表名,再加修改的语句4.between and条件查询范围前闭后闭5. 使用索引 in 范围查询,like是用作模糊查询的6. group by子句进行分组,having进行行条件筛选7. 字符串通配符8. 参数解析9. 关系数据库六种范式10.数据库系统特点:高共享、低冗原创 2022-11-06 08:00:00 · 1265 阅读 · 51 评论 -
刷题笔记之四(Fibonacci数列+合法括号序列判断+跳石板+幸运的袋子+两种排序方式+最小公倍数)
1. Math类是封装了常用的数学运算2. Object类的12种常用方法3. Fibonacci数列4. 合法括号序列判断5. 子类父类trycatch调用6. 跳石板7. 幸运的袋子8.跳出forEach循环break9 .java为后缀的文件中,只能有一个public修饰并且文件名相同的类10. a++先使用后++11. 两种排序方式12. 最小公倍数原创 2022-10-31 08:30:00 · 1146 阅读 · 50 评论 -
刷题笔记之三(统计回文+连续最大和+查找组成一个偶数最接近的两个素数+把字符串转换成整数+不要二)
1. this()构造方法的调用,super()父类成员变量或方法的调用2. 浮点型 和 long 不能做 switch() 的参数类型3. .java源文件中,只能有一个和文件名相同的public类,可以包含其他类4.ConcurrentHashMap使用通过volatile修饰符和后插入后特殊的算法实现读不加锁.5. final表示属性的不可变及方法的不可重写7. 统计回文8. 连续最大和9. 查找组成一个偶数最接近的两个素数10. 构造方法可以重载,子类可以通过sup原创 2022-10-30 08:00:00 · 803 阅读 · 33 评论 -
刷题笔记之六(扑克牌大小+最近公共祖先+求最大连续bit数+二进制插入)
1. 扑克牌大小2. HashMap中put相同key时会覆盖已存在的value3. 数据库JDBC操作时使用到的接口4. 接口使用来实现的5. ArrayList传参,数组就是参数大小,如果没传参数组默认大小10,以1.5倍扩容6.ReadWriteLock即为读写锁,使用于读多写少的并发场景7. 最近公共祖先8. 求最大连续bit数9. 一段代码只会抛出一个异常,最有可能的是IOException编辑10. 检查异常需要处理,非检查异常不需要11. 包装类是原创 2022-11-04 08:00:00 · 636 阅读 · 44 评论 -
刷题笔记之五(走方格的方案数+手套+井字棋+密码强度等级)
1. toUpperCase和replace创建新的字符串进行修改2. new出来的对象都是在堆中的3. static修饰的方法,不需要对象也可以调用4. 在使用==和equals要注意看有没有自动拆箱的情况5. 走方格的方案数6. 手套7. 全局变量在堆中,局部变量在栈中8. abstract只能修饰类或方法,不能和final同时用9. 出现异常会执行catch中的语句,finally不论异常有没有都会执行,出现异常后面的语句都不能正常往下执行10. 在运算时注意类型原创 2022-11-02 15:45:24 · 745 阅读 · 48 评论 -
刷题笔记之二(字符串中找出连续最长的数字串+数组中出现次数超过一半的数字+另类加法+计算糖果+进制转换)
1. 多层继承问题2. 继承中子类的构造要引用super3. == 比较地址4.字符串中找出连续最长的数字串(编程题)5.数组中出现次数超过一半的数字(编程题)6. 另类加法(编程题)7. Interface 接口中定义方法8. 实现或继承Collection接口的类9. 类实现的接口修饰符不能是final10. 计算糖果(编程题)11. 进制转换(编程题)12. 数组复制效率最高:System.arraycopy原创 2022-10-28 08:00:00 · 1127 阅读 · 40 评论 -
刷题笔记之一(组队竞赛+删除公共字符+排序子序列+倒置字符串)
1. 组队竞赛(编程)2. 删除公共字符(编程)3. toLowerCase的比较4. 实例为null + 静态方法引用5. 子类继承父类,构造方法的执行6. static不能定义为局部变量7. 抽象方法不能有具体实现8.Constructor是构造方法9. 排序子序列(编程)10.倒置字符串(编程)原创 2022-10-15 09:28:21 · 732 阅读 · 49 评论 -
【刷题笔记】之牛客面试必刷TOP101(1)
1. 反转链表(双链表头插法 / 栈)2.链表内指定区间反转3. 链表中的节点每k个一组翻转4. 合并两个排序的链表5. 合并k个已排序的链表原创 2022-08-23 11:02:47 · 1824 阅读 · 53 评论