代码随想录
文章平均质量分 93
不是飞鸿
但因热爱,愿迎万难
展开
-
代码随想录Day01 | LeetCode704.二分查找、LeetCode27.移除元素
LeetCode704.二分查找这道题目的前提是数组为有序数组,同时题目还强调数组中无重复元素,因为一旦有重复元素,使用二分查找法返回的元素下标可能不是唯一的。写二分法,区间的定义一般为两种,左闭右闭即[left, right],或者左闭右开即[left, right)。LeetCode27.移除元素双指针法(快慢指针法): 通过一个快指针和慢指针在一个for循环下完成两个for循环的工作。• 快指针:寻找新数组的元素 ,新数组就是不含有目标元素的数组• 慢指针:指向更新 新数组下标的位置原创 2023-01-12 22:06:39 · 3116 阅读 · 1 评论 -
代码随想录Day02 | LeetCode977.有序数组的平方、LeetCode209.长度最小的子数组、LeetCode59.螺旋矩阵II
所谓滑动窗口,就是不断的调节子序列的起始位置和终止位置,从而得出我们要想的结果。此题用滑动窗口最终目的是用一个for循环来完成这个操作。如果只用一个for循环,那么这个循环的索引,一定是表示滑动窗口的终止位置(如果索引是起始位置,那么遍历剩下终止位置的过程和暴力解法无异)在本题中实现滑动窗口,主要确定如下三点:• 窗口内是什么?• 如何移动窗口的起始位置?• 如何移动窗口的结束位置?原创 2023-01-12 22:30:34 · 3383 阅读 · 1 评论 -
代码随想录Day03 | 链表
链表是一种通过指针串联在一起的线性结构,每一个节点由两部分组成,一个是数据域一个是指针域(存放指向下一个节点的指针),最后一个节点的指针域指向null(空指针的意思)。链表的入口节点称为链表的头结点也就是head。题目举例:LeetCode203.移除链表元素LeetCode707.设计链表LeetCode206.反转链表原创 2023-01-14 18:33:44 · 2901 阅读 · 0 评论 -
代码随想录Day04 | LeetCode24. 两两交换链表中的节点、LeetCode19. 删除链表的倒数第N个节点、LeetCode160. 链表相交、LeetCode142. 环形链表Ⅱ
LeetCode24. 两两交换链表中的节点、LeetCode19. 删除链表的倒数第N个节点、LeetCode160. 链表相交、LeetCode142. 环形链表Ⅱ原创 2023-01-15 22:11:53 · 2748 阅读 · 0 评论 -
代码随想录Day05 | LeetCode1. 两数之和、LeetCode242.有效的字母异位词、LeetCode349. 两个数组的交集、LeetCode202. 快乐数
LeetCode1. 两数之和、LeetCode242.有效的字母异位词、LeetCode349. 两个数组的交集、LeetCode202. 快乐数当我们遇到了要快速判断一个元素是否出现集合里的时候,就要考虑哈希法。哈希法是牺牲了空间换取了时间,因为我们要使用额外的数组,set或者是map来存放数据,才能实现快速的查找。原创 2023-01-30 20:55:58 · 1840 阅读 · 0 评论