随笔- 57
文章- 0
评论- 2
阅读-
2957
05 2023 档案
代码随想录12|栈和队列
摘要:239. 滑动窗口最大值 这是使用单调队列的经典题目。 此时我们需要一个队列,这个队列呢,放进去窗口里的元素,然后随着窗口的移动,队列也一进一出,每次移动之后,队列告诉我们里面的最大值是什么。 每次窗口移动的时候,调用que.pop(滑动窗口中移除元素的数值),que.push(滑动窗口添加元素的数
阅读全文
代码随想录Day11|栈和队列
摘要:20. 有效的括号 经典的利用栈的题目 这里选择用java来写,注意我们的java中的泛型不能用基本数据类型,而是应该使用包装类 注意!java一定是定义后需要声明,然后才能使用 1047. 删除字符串中的所有相邻重复项 略 比较简单 150. 逆波兰表达式求值 注意:leetcode 内置jdk的
阅读全文
代码随想录Day10|栈与队列
摘要:那么我这里再列出四个关于栈的问题,大家可以思考一下。以下是以C++为例,使用其他编程语言的同学也对应思考一下,自己使用的编程语言里栈和队列是什么样的。 C++中stack 是容器么? 我们使用的stack是属于哪个版本的STL? 我们使用的STL中stack是如何实现的? stack 提供迭代器来遍
阅读全文
代码随想录Day9|
摘要:28. 实现 strStr() 在一个串中查找是否出现过另一个串,这是KMP的看家本领 说到KMP,先说一下KMP这个名字是怎么来的,为什么叫做KMP呢。 因为是由这三位学者发明的:Knuth,Morris和Pratt,所以取了三位学者名字的首字母。所以叫做KMP KMP主要应用在字符串匹配上。 K
阅读全文
代码随想录Day8|字符串
摘要:主要是学了java的字符串用法,题目不是很难 使用 StringBuilder 类型可以节省时间,关于这个类型的添加和使用 char temp = sb.charAt(start); sb.setCharAt(start, sb.charAt(end)); sb.setCharAt(end, tem
阅读全文
代码随想录Day7|哈希表part02
摘要:今日任务 ● 454.四数相加II ● 383. 赎金信 ● 15. 三数之和 ● 18. 四数之和 ● 总结 详细布置 454.四数相加II 建议:本题是 使用map 巧妙解决的问题,好好体会一下 哈希法 如何提高程序执行效率,降低时间复杂度,当然使用哈希法 会提高空间复杂度,但一般来说我们都是舍
阅读全文
代码随想录Day6
摘要:链表的复习章节 哈希的概念和应用:https://programmercarl.com/哈希表理论基础.html#哈希函数 当我们想使用哈希法来解决问题的时候,我们一般会选择如下三种数据结构。 数组 set (集合) map(映射) 这里数组就没啥可说的了,我们来看一下set。 Leetcode 2
阅读全文
代码随想录day4|leetcode24,19,142
摘要:Leetcode 24 我一开始是直接模拟,通过考虑后面有没有second point和third point的情况下进行的编程,非常的冗长。后面阅读了推荐的答案,发现在编写链表题目的时候,可以使用虚拟头节点,这样写出来的结果非常的简洁明了,并且一二两个就可以开始重复进行 关于判断语句的 如果是an
阅读全文
代码随想录day3
摘要:先读了一下关于数组的总结部分 感觉总结的图非常有用,复制过来,以方便复习查阅 完成了三个链表相关习题,主要是熟悉链表的定义 Leetcode 203 Leetcode 707 Leetcode 206
阅读全文
代码随想录训练营day2| leetcode977, 209,59
摘要:leetcode 977 题目:https://leetcode.com/problems/squares-of-a-sorted-array/description/ 解:https://programmercarl.com/0977.%E6%9C%89%E5%BA%8F%E6%95%B0%E7%
阅读全文
代码随想录算法训练营14期 Day1
摘要:数组理论基础 原文:https://github.com/youngyangyang04/leetcode-master/blob/master/problems/数组理论基础.md 704. 二分查找 解析链接:https://programmercarl.com/0704.二分查找.html#_
阅读全文