E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
剑指offer做题笔记
【
剑指offer
|图解|位运算】训练计划VI+撞色搭配
个人主页:聆风吟系列专栏:数据结构、
剑指offer
每日一练少年有梦不应止于心动,更要付诸行动。文章目录一.
聆风吟_
·
2023-12-06 00:46
剑指offer每日一练
c++
经验分享
算法
数据结构
剑指offer
- 连续子数组的最大和
题目输入一个整型数组,数组里有正数也有负数。数组中一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。要求时间复杂度为O(n)例如:输入数组为{1,-2,3,10,-4,7,2,-5},和最大的子数组为{3,10,-4,7,2},因此输出为该子数组的和为18分析从头到尾累加数组中的每个数字来分析规律初始化和为0第一步加上第一个数字1,此时和为1第二步加上数字-2,和为-1第三步加上数字3,
Longshihua
·
2023-12-05 19:00
剑指Offer
18.删除链表的节点
思路用双指针来遍历链表,找到要删除的节点后进行删除。在头节点之前增加一个dummy节点,这样当要删除的节点是否为头节点都可以统一处理。以head=[4,5,1,9],val=5为例:代码/***Definitionforsingly-linkedlist.*structListNode{*intval;*ListNode*next;*ListNode(intx):val(x),next(NULL)
莱安纳德
·
2023-12-05 08:16
剑指Offer第二版
链表
数据结构
leetcode
做题笔记
1423. 可获得的最大点数
几张卡牌排成一行,每张卡牌都有一个对应的点数。点数由整数数组cardPoints给出。每次行动,你可以从行的开头或者末尾拿一张卡牌,最终你必须正好拿k张卡牌。你的点数就是你拿到手中的所有卡牌的点数之和。给你一个整数数组cardPoints和整数k,请你返回可以获得的最大点数。示例1:输入:cardPoints=[1,2,3,4,5,6,1],k=3输出:12解释:第一次行动,不管拿哪张牌,你的点数
si_mple_
·
2023-12-05 08:46
滑动窗口
leetcode
笔记
算法
leetcode
做题笔记
1038. 从二叉搜索树到更大和树
给定一个二叉搜索树root(BST),请将它的每个节点的值替换成树中大于或者等于该节点值的所有节点值之和。提醒一下,二叉搜索树满足下列约束条件:节点的左子树仅包含键小于节点键的节点。节点的右子树仅包含键大于节点键的节点。左右子树也必须是二叉搜索树。示例1:输入:[4,1,6,0,2,5,7,null,null,null,3,null,null,null,8]输出:[30,36,21,36,35,2
si_mple_
·
2023-12-05 08:43
递归
leetcode
笔记
算法
剑指offer
——二叉树的下一个结点
题目描述给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。代码自己写的时候竟然还考虑结点是在根节点的左子树还是右子树,感觉还是对二叉树的理解不够深,只需要判断结点是它父节点的左子树还是右子树即可。
不胖二十斤不改名zz
·
2023-12-05 03:33
力扣树专题-2 树的层序遍历
剑指Offer
32 - I leetcode102 Java刷题笔记
听不少大佬建议过——力扣刷题要从树开始!因为可以建立起套路化的思路~另外就是锻炼好递归的思想所以我们从树开始~本专题采用前面提到的“兔系刷题法”不求钻研多种解法只求快速见题型快速刷题!另外力扣评论区里看见的——树的题目写不出来,多背几个模版就行。前中后序、广度深度遍历、路径和、深度,直径,这些全部背下来。感觉很有道理!多背些多理解些套路嘛!本次刷题笔记中有两道题相比上一篇二叉树遍历的基础难度有所提
敲代码的小提琴手
·
2023-12-04 18:31
#
分门别类刷力扣
力扣刷题
算法强化之路
二叉树
队列
java
leetcode
新星计划
九日集训第三天《一维数组》
文章目录文章目录文章目录今日知识总结题目分析[33.搜索旋转排序数组](https://leetcode-cn.com/problems/search-in-rotated-sorted-array/)[
剑指
tuzittttt
·
2023-12-04 12:33
九日集训
c++
【解题报告】《九日集训》(第四天)
语言:C++全是水题的一天目录1470.重新排列数组1929.数组串联1920.基于排列构建数组1480.一维数组的动态和
剑指Offer
58-II.左旋转字符串1108.IP地址无效化
剑指Offer
05
木木夕 _
·
2023-12-04 12:57
集训
leetcode
哈希算法
算法
算法之单调队列
单调队列,顾名思义,就是一个单调递减/递增的队列力扣上的对应题目有
剑指Offer
30.包含min函数的栈,
剑指Offer
59-I.滑动窗口的最大值,队列的最大值以滑动窗口的最大值为例输入:nums=[1,3
幽人233
·
2023-12-04 09:20
leetcode
算法
leetcode
职场和发展
<
剑指Offer
>面试题61: 扑克牌中的顺子
题目描述从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王可以看成任意数字题目解读
剑指Offer
298代码#include
cb_guo
·
2023-12-04 08:32
剑指offer
面试题35:复制链表的复制
简单链表的复制首先看下简单链表的复制,复制普通链表很简单,只需遍历链表,每轮建立新节点+构建前驱节点pre+当前节点node的引用指向即可。classSolution{publicNodecopyRandomList(Nodehead){Nodecur=head;Nodedum=newNode(0),pre=dum;while(cur!=null){Nodenode=newNode(cur.val
丑月十五
·
2023-12-04 08:32
链表
剑指Offer
:62-二叉搜索树的第k个结点
题目描述给定一棵二叉搜索树,请找出其中的第k小的结点。例如,(5,3,7,2,4,6,8)中,按结点数值大小顺序第三小结点的值为4。思路实现1-中序遍历/*structTreeNode{intval;structTreeNode*left;structTreeNode*right;TreeNode(intx):val(x),left(NULL),right(NULL){}};*/classSolu
jackmxp
·
2023-12-04 07:56
[JavaEE]线程的状态与安全
专栏简介:JavaEE从入门到进阶题目来源:leetcode,牛客,
剑指offer
.创作目标:记录学习JavaEE学习历程希望在提升自己的同时,帮助他人,,与大家一起共同进步,互相成长.学历代表过去,能力代表现在
Node_Hao
·
2023-12-03 19:39
JavaEE
多线程
剑指offer
:05 用两个栈实现队列
题目描述用两个栈来实现一个队列,完成队列的Push和Pop操作。队列中的元素为int类型。基本思想两个栈s1和s2,入队就将元素入s1栈,出队时,如果s2中为空,将s1里全部元素弹出压入s2,再弹出;如果s2中不为空,则弹出,直到s2为空PythonclassSolution:def__init__(self):self.s1=[]self.s2=[]defpush(self,node):#wri
毛毛毛毛毛豆
·
2023-12-03 12:45
2022-01-08
IT工业界1.力扣:链表中倒数第k个节点2022-01-08(
剑指Offer
22.链表中倒数第k个节点)英语1.墨墨背单词:复习50个单词
幸福大黑鸭
·
2023-12-03 10:06
leetcode
做题笔记
1094. 拼车
车上最初有capacity个空座位。车只能向一个方向行驶(也就是说,不允许掉头或改变方向)给定整数capacity和一个数组trips,trip[i]=[numPassengersi,fromi,toi]表示第i次旅行有numPassengersi乘客,接他们和放他们的位置分别是fromi和toi。这些位置是从汽车的初始位置向东的公里数。当且仅当你可以在所有给定的行程中接送所有乘客时,返回true
si_mple_
·
2023-12-03 09:14
数组的应用
leetcode
笔记
算法
微软面试算法题总结
Leecode84第一题是数字三角形找最大和路径(容易题)第二题是二叉树中找两个节点的最近公共祖先节点(最近公共祖先)给定二叉树中的特定节点中序遍历后的下一个节点(
剑指offer
)Leetcode124
wwxy261
·
2023-12-03 06:12
算法
LeetCode Top 100 高频算法题 Longest Palindromic Substring
小编和实验室同学之前面试找工作,也只刷了
剑指offer
和这top100算法题,在实际面试中也遇到了很多LeetCode上的原题。
古老的屋檐下
·
2023-12-03 06:34
LeetCodeTop100
leetcode
最长回文子串
面经
手撕算法
剑指offer
05:字符串替换
一、问题请实现一个函数,把字符串s中的每个空格替换成"%20"。示例输入:s="Wearehappy."输出:"We%20are%20happy."二、解法解法一思路:调库既然使用了JDK的库函数,最好还是去看一下源码怎么实现的。如下,可以看到其实JDK内部使用了正则表达式来替换全部的空格。正则虽然通用,但是在时间效率这一块必然没那么好,如果面试遇到这种问题,世界调库也不太好。publicStri
Quintanliu
·
2023-12-03 04:06
LeetCode 有关哈希表的
做题笔记
Python实现
有关哈希表的LeetCode
做题笔记
,Python实现242.有效的字母异位词ValidAnagramLeetCodeCN第242题链接第一种方法:对两个字符串排序后对比classSolution:defisAnagram
划水型派大星
·
2023-12-02 18:13
剑指Offer
24题目分析
剑指Offer
24题目分析解析思路代码实现本例中可以思考的点解析思路官方解析可以采用头插法解决。不了解的可以搜一下。
斜月三
·
2023-12-02 15:18
力扣
算法
回文链表,
剑指offer
27,力扣 61
目录题目:我们直接看题解吧:解题方法:难度分析:审题目+事例+提示:解题分析:解题思路(数组列表+双指针):代码说明补充:代码实现:代码实现(快慢指针):题目地址:234.回文链表-力扣(LeetCode)难度:简单今天刷回文链表,大家有兴趣可以点上看看题目要求,试着做一下。题目:给定一个链表的头节点head,请判断其是否为回文链表。如果一个链表是回文,那么链表节点序列从前往后看和从后往前看是相同
大数据SQLboy
·
2023-12-02 12:01
leetcode
算法
java
链表
数据结构
【数据库基础】
目录:前言什么是数据库主流数据库服务器,数据库,表关系MySQL架构SQL分类存储引擎前言
剑指offer
:一年又1天什么是数据库存储数据用文件就可以了,为什么还要弄个数据库?
胜利熊猫
·
2023-12-02 06:49
MySQL
数据库
sql
【MySQL表的操作】
目录:前言表的操作创建表查看表结构修改表对列的增删改修改表名对表中数据的操作插入数据查找数据修改数据删除数据删除表总结前言
剑指offer
:一年又3天表的操作创建、查看、修改(属性和内容)与删除创建表语法
胜利熊猫
·
2023-12-02 06:16
MySQL
mysql
sql
数据库
每日一题之《
剑指offer
》23,24题
第二十三题:二叉搜索树的后续遍历序列难易度:⭐⭐输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。对于一个二叉搜索树而言,例如:该二叉搜索树的后续遍历的结果为:9,13,11,20,32,30,16不难看出,后续遍历的序列中,最后一个数字为一个二叉搜索树的root节点,最后一个节点的前一个节点为root节点的右子
憨憨二师兄
·
2023-12-02 05:47
《
剑指offer
第二版》面试题59 题目二:队列的最大值(java)
题目描述请定义一个队列实现函数max得到队列里的最大值。要求函数max、push_back和pop_front的时间复杂度都为O(1)。解题思路用双端队列maximums保存最大值。用currentIndex记录push进队列数字的index。push_back的时候,如果push的值number大于maximums的队尾元素,则删除队尾元素,直到maximums中没有比number小的值。pop
castlet
·
2023-12-01 22:40
剑指 Offer(第2版)面试题 11:旋转数组的最小数字
剑指Offer
(第2版)面试题11:旋转数组的最小数字
剑指Offer
(第2版)面试题11:旋转数组的最小数字解法1:二分查找
剑指Offer
(第2版)面试题11:旋转数组的最小数字题目来源:22.旋转数组的最小数字解法
UestcXiye
·
2023-12-01 22:31
剑指
Offer
C++
数据结构与算法
剑指Offer
二分查找
力扣
剑指offer
179题 查找总价格为目标值的两个商品 双指针算法
LCR179.查找总价格为目标值的两个商品购物车内的商品价格按照升序记录于数组price。请在购物车中找到两个商品的价格总和刚好是target。若存在多种情况,返回任一结果即可。示例1:输入:price=[3,9,12,15],target=18输出:[3,15]或者[15,3]示例2:输入:price=[8,21,27,34,52,66],target=61输出:[27,34]或者[34,27]
是布谷阿
·
2023-12-01 21:58
力扣算法题
算法
leetcode
双指针
《剑指 Offer (第 2 版)》第 36 题:二叉搜索树与双向链表(典型递归问题)
《
剑指Offer
(第2版)》第36题:二叉搜索树与双向链表(典型递归问题)-1思
李威威
·
2023-12-01 19:20
leetcode
做题笔记
1657. 确定两个字符串是否接近
如果可以使用以下操作从一个字符串得到另一个字符串,则认为两个字符串接近:操作1:交换任意两个现有字符。例如,abcde->aecdb操作2:将一个现有字符的每次出现转换为另一个现有字符,并对另一个字符执行相同的操作。例如,aacabb->bbcbaa(所有a转化为b,而所有的b转换为a)你可以根据需要对任意一个字符串多次使用这两种操作。给你两个字符串,word1和word2。如果word1和wor
si_mple_
·
2023-12-01 16:32
字符串的应用
leetcode
笔记
算法
剑指offer
Day20----求1+2+3+...+n
题目:求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。思路:采用逻辑断路的知识,解决问题。源码:GitHub源码publicclassSolution{publicintSum_Solution(intn){intsum=n;booleanSBWY=(sum!=0)&&((sum+=Sum_Solutio
墨殇染泪
·
2023-12-01 08:21
剑指offer
37:序列化二叉树
题目描述:请实现两个函数,分别用来序列化和反序列化二叉树,不对序列化之后的字符串进行约束,但要求能够根据序列化之后的字符串重新构造出一棵与原二叉树相同的树。二叉树的序列化(Serialize)是指:把一棵二叉树按照某种遍历方式的结果以某种格式保存为字符串,从而使得内存中建立起来的二叉树可以持久保存。序列化可以基于先序、中序、后序、层序的二叉树等遍历方式来进行修改,序列化的结果是一个字符串,序列化时
姚舜禹_12140
·
2023-12-01 08:20
剑指offer
java
后端
数据结构
算法
广度优先
算法经典题:二叉树中节点之和最大的路径
题目:
剑指Offer
Ⅱ051.节点之和最大的路径路径被定义为一条从树中任意节点出发,沿父节点-子节点连接,达到任意节点的序列。同一个节点在一条路径序列中至多出现一次。
多拿好offer
·
2023-12-01 03:32
算法
算法
链表
动态规划
二叉树
最大路径
《
剑指offer
第二版》面试题63:股票的最大利润(java)
题目描述假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少?例如,一只股票在某时间节点的价格为{9,11,8,5,7,12,16,14}。如果在价格为5的时候买入,16卖出。则能收获最大的利润11。解题思路该题目即求数组的所有数的最大差值。遍历数组,假设当前遍历第i个数组,用min存储前面i-1个数字的最小值,maxDiff记录当前数字和min的最大差值。遍
castlet
·
2023-11-30 23:57
剑指offer
【位运算】
位运算&与:两个位置都为1时才返回1(1&1=1,1&0=0)|或:一个位置位1即可返回1(1|0=1)^异或:两个位置,相同位0,不同为1(1^1=0,0^0=0,1^0=1)~取反:1变0,0变1>右移:各二进位全部右移若干位,对无符号数,高位补0复合赋值,如a&=b即为a=a&b二进制中1的个数逐位判断定义result=0,用于记录1的个数使用num&1来判断最后一位是否为1,然后右移,遍历
绪安
·
2023-11-30 19:31
leetcode:160. 相交链表
题目来源160.相交链表面试题02.07.链表相交
剑指Offer
52.两个链表的第一个公共节点题目描述structListNode{intval;ListNode*next;ListNode():val
OceanStar的学习笔记
·
2023-11-30 17:16
算法与数据结构
链表
leetcode
算法
LeetCode Java刷题笔记—160. 相交链表
简单难度,这道题和
剑指Offer
52.两个链表的第一个公共节点是同一道题。A和B两个链表长度可能不同,但是A+B和B+A的长度是相同的,所以两个节点先遍历自己再遍历对方一定是同时结束。
刘Java
·
2023-11-30 17:45
链表
leetcode
java
160.
相交链表
剑指offer
Day13----链表中环的入口结点
题目:给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。思路:使用双指针法,先判断是否有环,有环的话,再让slow指针指向头结点,然后fast指针和slow指针每次都走一步,当他们相遇时,为环的入口结点。推导图片假设x为环前面的路程(黑色路程),a为环入口到相遇点的路程(蓝色路程,假设顺时针走),c为环的长度(蓝色+橙色路程)当快慢指针相遇的时候:此时慢指针走的路程为Ssl
墨殇染泪
·
2023-11-30 10:13
【MySQL库的操作】
目录:前言库的操作创建数据库字符集和校验规则校验规则对数据库的影响选择和查看数据库修改数据库删除数据库备份注意事项查看连接情况总结前言
剑指offer
:一年又二天库的操作创建、选择、查看、修改、删除与备份
胜利熊猫
·
2023-11-30 10:22
MySQL
mysql
oracle
数据库
leetcode
做题笔记
2336. 无限集中的最小数字
现有一个包含所有正整数的集合[1,2,3,4,5,...]。实现SmallestInfiniteSet类:SmallestInfiniteSet()初始化SmallestInfiniteSet对象以包含所有正整数。intpopSmallest()移除并返回该无限集中的最小整数。voidaddBack(intnum)如果正整数num不存在于无限集中,则将一个num添加到该无限集最后。思路一:利用st
si_mple_
·
2023-11-30 08:22
数组的应用
leetcode
笔记
算法
LeetCode《程序员面试金典》面试题 08.01. 三步问题
题目解题面试题08.01.三步问题三步问题题解
剑指Offer
10-I.斐波那契数列斐波那契数列题解70.爬楼梯爬楼梯剑指Off
La vie est belle❤️
·
2023-11-29 18:39
程序员面试金典
记忆化搜索
动态规划
数学
剑指Offer
-机器人的运动范围
剑指Offer
-机器人的运动范围题目描述LCR130.衣橱整理家居整理师将待整理衣橱划分为mxn的二维矩阵grid,其中grid[i][j]代表一个需要整理的格子。
Jasper_Fish
·
2023-11-29 16:45
算法
算法
剑指Offer
-剪绳子
剑指Offer
-剪绳子题目描述LCR131.砍竹子I现需要将一根长为正整数bamboo_len的竹子砍为若干段,每段长度均为正整数。请返回每段竹子长度的最大乘积是多少。
Jasper_Fish
·
2023-11-29 16:44
算法
算法
剑指offer
07:重建二叉树
一、问题输入某二叉树的前序遍历和中序遍历的结果,请构建该二叉树并返回其根节点。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。示例1:输入:preorder=[3,9,20,15,7],inorder=[9,3,15,20,7]输出:[3,9,20,null,null,15,7]image示例2:输入:preorder=[-1],inorder=[-1]输出:[-1]二、解法解法一思路:递归
Quintanliu
·
2023-11-29 14:49
剑指offer
——64滑动窗口的最大值(Python)
【题目】给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口,他们的最大值分别为{4,4,6,6,6,5};针对数组{2,3,4,2,6,2,5,1}的滑动窗口有以下6个:{[2,3,4],2,6,2,5,1},{2,[3,4,2],6,2,5,1},{2,3,[4,2,6],2,5,1},{
Amon O_*
·
2023-11-29 12:42
剑指offer
链表
算法
数据结构
python
leetcode
剑指offer
——滑动窗口的最大值
题目:给定一个数组nums,和滑动窗口的大小k,请找出滑动窗口的最大值。publicint[]maxSlidingWindow(int[]nums,intk){if(knum.length)returnnewint[]{};intleft=0,right=0,i=0;LinkedListlist=newLinkedList();while(right0&&nums[right]>list.peek
技术菜鸟—淡定万
·
2023-11-29 12:40
leetcode
算法
数据结构
python
剑指offer
64. 滑动窗口的最大值
题目描述给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口,他们的最大值分别为{4,4,6,6,6,5};针对数组{2,3,4,2,6,2,5,1}的滑动窗口有以下6个:{[2,3,4],2,6,2,5,1},{2,[3,4,2],6,2,5,1},{2,3,[4,2,6],2,5,1},{
dby_freedom
·
2023-11-29 12:06
剑指offer@Python版
剑指offer
64
滑动窗口的最大值
Python
C++
剑指offer
:输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。
剑指offer
算法题分治二叉搜索树和链表题目描述输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。题目分析明确Convert函数的功能。
gaozhuang63
·
2023-11-29 10:35
剑指offer
链表
指针
数据结构
算法
java
Java二叉搜索树的后续遍历(递归)
剑指offer
33.二叉搜索树的后序遍历解题思路:1.二叉搜索树的特点:二叉搜索树中根节点的值大于左子树中的任意一个节点的值,小于右子树中的任意一个节点的值2.后序遍历顺序:左子树–>右子树–>根节点classSolution
不想秃头Q-Q
·
2023-11-29 10:32
剑指offer
leetcode
算法
二叉搜索树
java
递归
上一页
8
9
10
11
12
13
14
15
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他