当前位置:网站首页>leetcode刷题学习之路
leetcode刷题学习之路
2022-08-03 03:37:00 【bu volcano】
一、数组
2022【7.20】
485最大连续1的个数
(遍历)
【7.21】
283移动零
(双指针 可以原地更改数组)
27移除元素
(双指针 相当于把val移动到最后)
【7.22】
剑指offer_03数组中重复的数字
(重复这个字眼–>哈希表)(技巧:因为把数当成索引的话,那么在数组中就有唯一一个属于它的位置 当一个位置出现两个元素时 就可得到重复的数)
【7.23】
2319 判断矩阵是否是一个 X 矩阵
(反对角线元素性质:i+j=n-1)
599 两个列表的最小索引总和
(相同的字眼:哈希表)
【7.24】
674 最长连续递增序列
(双指针可针对数组原地操作)
二、链表
【7.25】
剑指 Offer 04 二维数组中的查找
(因为数组是有序的,因此把它旋转45°能够得到类似于排序二叉树形式)
203 移除链表元素
(遍历)
【7.26】
剑指 Offer 18 删除链表的节点
(遍历)
剑指 Offer 06 从尾到头打印链表
(反过来的操作字眼:栈或递归)
206 反转链表
(双指针 改变相邻两个节点的方向)
【7.27】
剑指 Offer 22 链表中倒数第k个节点
(倒数K的位置是正数n-k)(双指针中间差K; 快的走到尾,慢的到倒数K位置)
【7.28】
剑指 Offer 25 合并两个排序的链表
(创建假头结点辅助判断大小,当做新链表往后添加元素)
【7.29】
19删除链表的倒数第 N 个结点
(同offer_22题,设置双指针差N个位置;再创建伪头结点让cur指向要删除节点前一个方便删除操作:cur.next=cur.next.next)
24 两两交换链表中的节点
(pre指向假头结点,双指针指向要交换节点:
①pre.next=node2
②node1.next=node2.next
③node2.next=node1
④ pre=node1;node1=node1.next;node2=node1.next.next)
【7.30】
160相交链表
(通过双指针转换成路程相遇问题:建立路程等式,相遇点即是相交点)
141环形链表
(同160题通过快慢双指针转换成相遇问题)
【8.1】
707设计链表
(通过实现addindex来实现addhead(index=0)和addtail(index=size))
三、哈希表
217存在重复元素
(直接遍历时间复杂度太高,因此可以先排序,这样相同的数字就会出现在相邻)
(使用集合可实现查找块;或者使用字典利用数值当索引建立哈希表可实现查找块)
边栏推荐
猜你喜欢
随机推荐
肖sir___面试就业课程____性能测试
再讲Promise
Domino服务器SSL证书安装指南
els 消除行
信号和槽的绑定
Senior ClickHouse -
关于#sql#的问题,如何解决?
conda常用命令合集
js的组成及js样式
9 椭圆曲线密码体制
硬件设计哪些事-PCB设计那些事
这个困扰程序员50年的问题,终于要被解决了?
PSSecurityException
网工知识角|华为网络工程师,华为、华三、思科设备三层交换机如何使用三层接口?命令敲起来
sql问题,如何能做到先声明表的名称,例如product202201,表示2022年一月份的货物表,再在声明过的表中查找,下面的代码运行时有错误显示找不到表table_name,请问改如何进行修改
数据库性能系列之索引(中)
(一)Nacos注册中心集群环境搭建
金仓数据库 Pro*C 迁移指南( 5. 程序开发示例)
【基础数学--埃氏筛】204. 计数质数
uniapp运行到手机,基座提示本应用无法独立运行,需要与hbuilderX 搭配使用








