
剑指offer
文章平均质量分 52
dv
大数据SQLboy
奋起直追,未来可期
展开
-
二叉搜索树第大K节点,剑指offer,力扣
剑指 Offer 54.的第k大节点给定一棵二叉搜索树,请找出其中第k大的节点的值。二叉搜索树的中序遍历为,根据此性质,易得二叉搜索树的为。因此,求 “二叉搜索树第 cnt大的节点” 可转化为求 “此树的中序遍历倒序的第 cnt个节点”。为 “左、根、为 “右、根、左。原创 2023-12-18 11:21:31 · 545 阅读 · 3 评论 -
用队列实现栈,力扣
【代码】用队列实现栈,力扣。原创 2023-12-14 11:22:22 · 438 阅读 · 0 评论 -
验证栈序列(栈压入、弹出序列),剑指offer,力扣
输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如,序列 {1,2,3,4,5} 是某栈的压栈序列,序列 {4,5,3,2,1} 是该压栈序列对应的一个弹出序列,但 {4,3,5,1,2} 就不可能是该压栈序列的弹出序列。初始化一个栈,将pushed数组中的元素依次加入到栈中,每加入一个元素,就判断栈是否为空 并且 这个元素的值是否与popped数组中的当前元素相等,如果相等则移除栈,如果不相等则继续添加元素。原创 2023-12-13 19:45:11 · 475 阅读 · 0 评论 -
min函数的栈(最小栈),剑指offer,力扣
定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的 min 函数在该栈中,调用 min、push 及 pop 的时间复杂度都是 O(1)原创 2023-12-04 15:18:04 · 477 阅读 · 0 评论 -
图书整理II(两个栈实现队列)
用。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 )原创 2023-12-03 10:46:19 · 967 阅读 · 0 评论 -
重排链表,剑指offerII 26,力扣 120
给定一个L 的头节点 head ,单链表 L 表示为:请将其重新排列后变为:不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。·不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。·不用进行return返回修改后的链表。原创 2023-11-29 21:48:31 · 513 阅读 · 1 评论 -
删除链表的倒数第N个节点,剑指offerII(21),力扣
给定一个链表,删除链表的倒数第。个结点,并且返回链表的头结点。原创 2023-11-28 19:09:57 · 522 阅读 · 1 评论 -
链表中环的入口节点(环形链表),剑指offer,力扣
给定一个链表,返回链表开始入环的第一个节点。从链表的头节点开始沿着 next 指针进入环的第一个节点为环的入口节点。如果链表无环,则返回 null。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。如果 pos 是 -1,则在该链表中没有环。注意,pos 仅仅是用于标识环的情况,并不会作为参数传递到函数中。说明:不允许修改给定的链表。原创 2023-11-27 16:02:29 · 612 阅读 · 1 评论 -
删除链表的节点,剑指offer 18,力扣
的头指针和一个要删除的节点的值,定义一个函数删除该节点。返回删除后的链表的头节点。原创 2023-11-26 11:20:54 · 615 阅读 · 1 评论 -
链表中倒数第k个节点,剑指offer,力扣
目录今天刷链表中倒数第k个节点,大家有兴趣可以点上看看题目要求,试着做一下。代码优化:代码实现(方法1):原创 2023-11-25 10:38:37 · 653 阅读 · 1 评论 -
两个链表的第一个公共节点(相交链表),剑指offer,力扣
4、如果两个链表中没有公共的结点,那PA和PB都将会遍历到链表的尾部,链表的尾部为null,那么PA、PB也会相等,但返回的是null。若相交,链表A: a+c, 链表B : b+c. 那么a+c+b+c = b+c+a+c ,则会在公共处c起点相遇。2、PA遍历链表A,当遍历到链表A尾部时,将headB头指针赋值给PA,PA开始遍历链表B,PB同理;今天刷两个链表的第一个公共节点(相交链表),大家有兴趣可以点上看看题目要求,试着做一下。假设a,b分别为两链表A,B非公共部分,c为公共部分。原创 2023-11-24 15:57:52 · 562 阅读 · 1 评论 -
合并两个有序链表,剑指offer,力扣
类似于浅拷贝后的对象和原对象的修改会相互影响,这本质是因为它们用的同一片内存,相当于一个房间配两把钥匙。但如果不是修改,而是直接赋值,它们是不会相互影响的,相当于换成了新房子的钥匙。链表头节点dum不能乱动,所以用cur暂代dum,让cur动,直接操作dum的话,最后返回就得重找头结点了。为什么要让cur=dum。原创 2023-11-23 15:25:20 · 441 阅读 · 1 评论 -
变态跳台阶,剑指offer
一只青蛙一次可以跳上 1 级台阶,也可以跳上 2 级……它也可以跳上 n 级。求该青蛙跳上一个 n 级的台阶总共有多少种跳法。原创 2023-11-22 15:12:19 · 407 阅读 · 0 评论 -
斐波那契数列,剑指offer,力扣
答案需要取模 1e9+7(1000000007) ,如计算初始结果为:1000000008,请返回 1。原创 2023-11-20 16:59:16 · 260 阅读 · 1 评论 -
图书馆整理I(从尾到头打印列表),剑指offer,力扣
上面题目与下面这道题不同点在于,上面的不能原地改变原列表,否则就跟下面这道题一样了。原创 2023-11-19 10:18:06 · 241 阅读 · 1 评论 -
反转链表,剑指offer,力扣
【代码】反转链表,剑指offer,力扣。原创 2023-11-18 14:33:15 · 213 阅读 · 1 评论 -
无重复最长字符串(最长无重复子字符串),剑指offer,力扣
请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度。假设字符串中值包含‘a’-‘z’的字符。例如,在字符串“arabcacfr”中,最长的不含重复字符的子字符串是“acfr”,长度为4。原创 2023-11-17 10:13:26 · 314 阅读 · 1 评论 -
套餐内商品的排列顺序(字符串的排列),剑指offer,力扣
【代码】套餐内商品的排列顺序(字符串的排列),剑指offer,力扣。原创 2023-11-16 10:05:09 · 164 阅读 · 0 评论 -
有效数字(表示数值的字符串),剑指offer,力扣
1、本题即允许字符串首末两端有一些额外的空格。但如果一个数没有整数部分,那么小数部分必须有。e或者E之后的指数部分。原创 2023-11-15 20:00:36 · 217 阅读 · 2 评论 -
招式拆解(第一个出现一次的字符),剑指offer,力扣
【代码】招式拆解(第一个出现一次的字符),剑指offer,力扣。原创 2023-11-14 19:15:50 · 172 阅读 · 1 评论 -
动态口令(左旋字符串),剑指offer,力扣
【代码】动态口令(左旋字符串),剑指offer,力扣。原创 2023-11-13 10:57:34 · 194 阅读 · 0 评论 -
字符串中的单词反转(反转单词序列),剑指offer,力扣
【代码】字符串中的单词反转(反转单词序列),剑指offer,力扣。原创 2023-11-13 09:43:05 · 155 阅读 · 1 评论 -
路径加密(替换空格),剑指offer,力扣
注:使用 了setLength()、setCharAt()方法。原创 2023-11-11 13:05:50 · 593 阅读 · 3 评论 -
点名(缺失的数字),剑指offer,力扣
【代码】点名(缺失的数字),剑指offer,力扣。原创 2023-11-10 15:06:32 · 223 阅读 · 1 评论 -
统计目标成绩的出现次数(数字在排序数组中出现次数),剑指offer,力扣
【代码】统计目标成绩的出现次数(数字在排序数组中出现次数),剑指offer,力扣。原创 2023-11-09 16:16:56 · 250 阅读 · 1 评论 -
解闯关密码(把数组排成最小的数),剑指offer,力扣
【代码】解闯关密码(把数组排成最小的数),剑指offer,力扣。原创 2023-11-08 21:07:19 · 259 阅读 · 1 评论 -
连续天数的最高销售额(连续子数组的最大和),剑指offer,力扣
【代码】连续天数的最高销售额(连续子数组的最大和),剑指offer,力扣。原创 2023-11-07 20:28:19 · 226 阅读 · 1 评论 -
库存管理II(数组出现次数超过一半的数字),剑指offer,力扣
【代码】库存管理II(数组出现次数超过一半的数字),剑指offer,力扣。原创 2023-11-06 16:55:55 · 125 阅读 · 0 评论 -
螺旋遍历二维数组(顺时针打印矩阵),剑指offer,力扣
这也就意味着,上面这道题会出现重复打印的情况因为最后一圈有可能退化为只有一行,只有一列,甚至只有一个数, 因此要注意进行判断是否 出现相遇,越界。上面这道题的二维数组是长度n*m(即边界不等长),即对应为一个矩阵。而上面这道题二维数组是长度n*n(即边界等长),即对应为一个方阵。下面这道是将一个整数按照螺旋矩阵方式放入一个二维数组中(从0开始)上面这道是从一个二维数组按照螺旋矩阵形式取出对应的元素。原创 2023-11-05 20:34:02 · 511 阅读 · 2 评论 -
训练计划I(调整数组顺序使奇数位于偶数前面),剑指offer,力扣
【代码】训练计划I(调整数组顺序使奇数位于偶数前面),剑指offer,力扣。原创 2023-11-04 19:12:02 · 143 阅读 · 1 评论 -
库存管理I(11.旋转数组的最小数字),剑指offer,力扣
【代码】库存管理I(11.旋转数组的最小数字),剑指offer,力扣。原创 2023-11-03 16:03:58 · 123 阅读 · 1 评论 -
空二维数组长度,剑指offer,length()函数
【代码】空二维数组长度,剑指offer,length()函数。原创 2023-11-03 10:53:40 · 148 阅读 · 0 评论 -
寻找目标值(二维数组中的查找),剑指offer04,力扣
【代码】寻找目标值(二维数组中的查找),剑指offer,力扣。原创 2023-11-02 15:14:05 · 247 阅读 · 1 评论 -
剑指offer,题型分类汇总
原题解: 【剑指Offer】50、数组中重复的数字 力扣题解: 寻找文件副本(数组重复数字),剑指offer.03,力扣-优快云博客原创 2023-11-01 21:08:57 · 196 阅读 · 0 评论 -
寻找文件副本(数组重复数字),剑指offer.03,力扣
注意:此处不适合用for循环,我们并不是直接遍历就可以,而是要满足num[i]==i,才可遍历下一位。原创 2023-11-01 21:01:39 · 185 阅读 · 1 评论