![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
力扣题目练习
文章平均质量分 62
每天一道力扣题
咔叽布吉
热爱生活
展开
-
leetcode热题100——第三天:15、17、19、20、21
文章目录1. 15.三数之和1. 题目描述2. 题目解析2. 17.电话号码的字母组合1.题目描述2. 题目解析3. 19.删除链表的倒数第 N 个结点1.题目描述2. 题目解析1. 方法一:获取长度再找到要删除的结点2. 方法二:栈3. 方法三:快慢指针4. 20.有效的括号1.题目描述2. 题目解析5. 21.合并两个有序链表1. 题目描述2. 题目解析1. 15.三数之和没有复杂度要求就好好解1. 题目描述2. 题目解析首先人来求三个数相加为0,先看小的加大的是不是等于0,小于0则原创 2022-05-29 20:23:23 · 168 阅读 · 0 评论 -
leetcode热题100——第二天:5、6、10、11
1. 5.最长回文子串1.题目描述2.题目解析回文子串是指正着读反着读都一样的子串,所以可以将字符串反过来,然后再比对两个字符串的最长相同长度即可;中心扩散法:对每一位置,以该点为中心往两边扩散:首先分别往左右单边扩散,找到与中心点相同的字符,然后同时往两边扩散,得到两端点相同字符,最后记录最长的结果即为所求;动态规划:中心扩散:其实可以进行优化,把记录max的右端点的变量去除,因为可以用长度和左端计算出来。一定注意每次循环都要把长度设置为1。class Solution {原创 2022-05-20 20:20:25 · 3209 阅读 · 0 评论 -
啃啃《动态规划》
这个链接讲得很详细:动态规划详解1.概念动态规划(Dynamic programming,DP):通过把复杂问题分解成简单子问题的求解复杂问题的方法。简单来说,动态规划就是把复杂的原问题分解成一个个子问题,子问题可以直接解决,然后记录子问题的解,辅助解决原问题。它常有四个关键特征:最优子结构、状态转移方程、边界、重叠子问题。最优子结构:是该问题可以拆解成的子问题;状态转移方程:子问题与原问题的关系;边界:最直接可以计算解决的最小子问题;重叠子问题:原问题可拆解成的子问题还可以继续分。自原创 2022-05-19 21:40:09 · 136 阅读 · 0 评论 -
leetcode热题100——第一天:1、2、3、4
目录0.总说1. 1.两数之和1.题目描述2. 题目解析2. 2.两数相加1.题目描述2.题目解析3. 3.无重复字符的最长子串1.题目描述2.题目解析4. 4.寻找两个正序数组的中位数1.题目描述2. 题目解析0.总说荒废了那么久的学业,该拾起来啦,今天是2022-05-18,至少每天刷两道题。前几道写了好几遍了,直接简写了。1. 1.两数之和1.题目描述2. 题目解析遍历,寻找有映射关系的两数,所以,直接使用Map哈希表即可。注意:HashMap的第一个参数是key,第二个是value。原创 2022-05-18 22:25:48 · 1051 阅读 · 0 评论 -
力扣第一题:【两数之和】——哈希法的Java实现
哈希表解两数之和原创 2022-02-23 15:07:29 · 387 阅读 · 0 评论 -
Leetcode刷题笔记——我的碎碎念
我的力扣刷题心得,常更新原创 2022-04-25 13:44:10 · 708 阅读 · 0 评论 -
剑指offer第六天:搜索与回溯算法(简单)32-I、II、III
剑指offer:搜索与回溯算法 32-I、II、III从上到下打印二叉树原创 2022-04-12 21:04:27 · 484 阅读 · 0 评论 -
第 5 天 查找算法(中等):剑指offer04、11、50
1.查找算法2.剑指offer04:二维数组中的查找3.剑指offer11:旋转数组的最小数字4.剑指offer50:第一次只出现一次的字符原创 2022-04-12 16:23:43 · 331 阅读 · 0 评论 -
剑指offer03、53-I、53-II:查找算法(简单)
查找算法剑指offer03、53原创 2022-04-06 21:51:48 · 70 阅读 · 0 评论 -
剑指offer05、58-II:字符串(简单)
剑指offer05:替换空格、58-II 左旋转字符串字符串java原创 2022-04-01 15:02:48 · 1144 阅读 · 0 评论 -
剑指offer06、24、35:链表简单
1.链表详解2.剑指offer06:从尾到头打印链表3.剑指offer24:反转链表4.剑指offer35:复杂链表的复制原创 2022-04-01 13:39:20 · 1262 阅读 · 0 评论 -
剑指offer 09、30:栈与队列
详解栈与队列;剑指offer 09和30题解析原创 2022-03-25 14:06:19 · 5892 阅读 · 0 评论 -
力扣第三题:【无重复字符的最长子串】
1.题目描述2.题目解析1.首先找到核心点:不重复的子串,那这个子串就需用一个容器来存储,以便于记录长度和判断后续字符是否与之重复。我想到了map映射,(或者说哈希表),查找方便。所以我创建一个hashmap,然后遍历字符串,不重复则存储,重复则更新辅助值以便判断长度。问题好像很简单,但是我总是对不同情况的讨论分析得不透彻:我试图采用if语句分类讨论所有情况;我试图在遇到重复字符时将重复字符之前的所有字符删除而非记录开始字符的位置;我难以疏通在遇到重复字符时开始位置与长度的计算方式。2.原创 2022-02-26 15:09:18 · 7666 阅读 · 0 评论 -
力扣第二题:【两数相加】
1.问题描述2.题目解析1.我看到题目之后的第一想法是把倒序链表中每位数字提取出来然后再加和,再存储入链表。但是这样的问题是两加数位数太大,不能用标准数据类型存储,所以不能直接计算。我所写的代码:/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode() {} * ListNode(int val)原创 2022-02-25 16:37:01 · 456 阅读 · 0 评论 -
刷题时常用的Java函数(一直更新)
Java基础原创 2022-02-25 10:45:20 · 1910 阅读 · 0 评论