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
LeetCode二叉树
LRU缓存算法
1.LRU算法
leetcode
146题要求:请你设计并实现一个满足LRU(最近最少使用)缓存约束的数据结构。函数get和put必须以O(
猿系人生
·
2024-08-25 18:39
缓存
数据结构
算法
leetcode
hot 100-146. LRU缓存机制
146.LRU缓存机制运用你所掌握的数据结构,设计和实现一个LRU(最近最少使用)缓存机制。它应该支持以下操作:获取数据get和写入数据put。获取数据get(key)-如果关键字(key)存在于缓存中,则获取关键字的值(总是正数),否则返回-1。写入数据put(key,value)-如果关键字已经存在,则变更其数据值;如果关键字不存在,则插入该组「关键字/值」。当缓存容量达到上限时,它应该在写入
Lucky小黄人
·
2024-08-25 18:39
链表
java
redis
缓存
数据结构
LeetCode
Hot100 146.LRU缓存
classLRUCache{public:intcapacity;intsize;unordered_map::iterator>>hash;listq;//backasbottom,frontastopLRUCache(intcapacity){this->capacity=capacity;}intget(intkey){if(hash.find(key)==hash.end())return
doglc
·
2024-08-25 18:08
LeetCode每日刷题记录
#
LeetCode中等题
leetcode
哈希算法
二叉树
的先序遍历,中序遍历,后序遍历和层次遍历的Python代码实现
文章目录0.引言1.类定义2.实例化3.输出和可视化0.引言最近学习巩固算法,
二叉树
的各种遍历经常用到,其中包括
二叉树
的先序遍历、中序遍历、后序遍历和层次遍历,也顺便定义了计算
二叉树
高度和叶子节点的函数
ZPILOTE
·
2024-08-25 18:37
Python
#
数据结构
二叉树
先序遍历
中序遍历
后序遍历
层次遍历
【数据结构4】树的实例-模拟文件系统、
二叉树
的遍历(先序遍历、中序遍历、后序遍历、层次遍历)
1树和
二叉树
2树的实例-模拟文件系统3
二叉树
3.1
二叉树
的遍历
二叉树
的先序遍历
二叉树
的中序遍历
二叉树
的后序遍历
二叉树
的层次遍历1树树是一种数据结构比如:目录结构树是一种可以递归定义的数据结构树是由n个节点组成的集合
林光虚霁晓
·
2024-08-25 18:36
算法题
数据结构
0710,0711
leetcode
刷题小结
暑期目标:刷100题,当前进度:2.8题其中:简单题记0.5题;中等题记0.8题;困难题记1.5题;07.10题目数量:简单题*2,进度1/100[231]2的幂,判断一个数是否为2的幂我的解法:使用位运算把输入与1求“&”,并加在count中(即,若为1,则+1,若为0,则不变)把输入右移一位:>>,继续重复上一步,直至该数为0-1特殊处理若count<2(即对应二进制数的补码仅有一位是1),则
全方位小白
·
2024-08-25 16:03
mysql 遍历
二叉树
_
二叉树
的三种遍历方式(前序、中序、后序)
树形结构是计算机科学中一种经典的数据结构。从前端编程当中UI界面层级结构,到java中的HashMap,到MySQL中的数据存储,到操作系统底层文件系统等等,这些都涉及到树形结构。树形结构的基本操作就是遍历,初学者可能会问:遍历就是遍历为什么还要分前中后三种方法呢?然而,要回答这个问题就要涉及到树形结构的更多知识了,比如:如果给定的树是一棵‘二叉搜索树’,那么如果中序遍历则会按从小大的顺序遍历这个
nnllc
·
2024-08-25 15:51
mysql
遍历二叉树
[C++进阶]
二叉树
进阶的一些面试题(二)
144.
二叉树
的前序遍历这题很简单,递归代码:/***Definitionforabinarytreenode.
Dream_Snowar
·
2024-08-25 13:38
c++
数据结构
开发语言
Leetcode
62:不同路径(Ⅰ和Ⅱ)
目录
Leetcode
62:不同路径Ⅰ题目描述思路分析
Leetcode
63:不同路径Ⅱ题目描述代码实现
Leetcode
62:不同路径Ⅰ题目描述思路分析解法一:动态规划publicintuniquePaths1
Sparky*
·
2024-08-25 12:33
算法
leetcode
435:无重叠区间
无重叠区间给定一个区间的集合intervals,其中intervals[i]=[starti,endi]。返回需要移除区间的最小数量,使剩余区间互不重叠。publicinteraseOverlapIntervals(int[][]intervals){Arrays.sort(intervals,(o1,o2)->{returno1[0]-o2[0];});intcount=0;intcover=i
0cfjg0
·
2024-08-25 12:32
leetcode
java
leetcode
139. 单词拆分,动态规划
leetcode
139.单词拆分给你一个字符串s和一个字符串列表wordDict作为字典。如果可以利用字典中出现的一个或多个单词拼接出s则返回true。
Cider瞳
·
2024-08-25 12:02
力扣刷题
动态规划
算法
数据结构
leetcode
c++
面试
leetcode
112. 路径总和 &
leetcode
113. 路径总和II,图文并茂,教你完全弄懂DFS,附详细代码
leetcode
112.路径总和给你
二叉树
的根节点root和一个表示目标和的整数targetSum。判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和targetSum。
Cider瞳
·
2024-08-25 12:02
力扣刷题
深度优先
算法
c++
面试
链表
数据结构
dfs
LeetCode
62:不同路径
题目描述一个机器人位于一个mxn网格的左上角(起始点在下图中标记为“Start”)。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。问总共有多少条不同的路径?代码classSolution{public:/*dp[i][j]的含义:从[0,0]出发到达[i,j]位置有多少条路线递推公式:dp[i][j]=dp[i-1][j]+dp[i][j-1]初
一个小猴子`
·
2024-08-25 11:30
LeetCode
算法
动态规划
leetcode
【
LeetCode
】:62:不同路径
classSolution{public:intuniquePaths(intm,intn){vector>dp(m,vector(n));dp[0][0]=1;for(inti=0;i>dp(m,vector(n));for(inti=0;i
@每日一练
·
2024-08-25 11:28
刷题
leetcode
算法
数据结构
leetcode
62:不同路径
leetcode
62不同路径一个机器人位于一个mxn网格的左上角(起始点在下图中标记为“Start”)。机器人每次只能向下或者向右移动一步。
0cfjg0
·
2024-08-25 11:28
leetcode
java
算法
Golang |
Leetcode
Golang题解之第373题查找和最小的K对数字
题目:题解:funckSmallestPairs(nums1,nums2[]int,kint)(ans[][]int){m,n:=len(nums1),len(nums2)//二分查找第k小的数对和left,right:=nums1[0]+nums2[0],nums1[m-1]+nums2[n-1]+1pairSum:=left+sort.Search(right-left,func(sumint
__AtYou__
·
2024-08-25 09:14
经验分享
Golang
Leetcode
题解
数据结构-堆(
二叉树
的特殊)-第四天
数据结构的“堆”与内存管理的“堆”是同一个概念吗?两者不是同一个概念,只是碰巧都叫“堆”。计算机系统内存中的堆是动态内存分配的一部分,程序在运行时可以使用它来存储数据。程序可以请求一定量的堆内存,用于存储如对象和数组等复杂结构。当这些数据不再需要时,程序需要释放这些内存,以防止内存泄漏。相较于栈内存,堆内存的管理和使用需要更谨慎,使用不当可能会导致内存泄漏和野指针等问题。参考文献定义堆是一棵完全二
科协软件2018
·
2024-08-25 07:01
c++
数据结构
代码随想录训练营第四十三天 300最长递增子序列 674最长连续递增序列
第一题:原题连接:300.最长递增子序列-力扣(
LeetCode
)子序列:数组不需要连续首先通过本题大家要明确什么是子序列,“子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序
愤怒的小阿淇这就开摆
·
2024-08-25 07:29
代码随想录训练营
leetcode
leetcode
--111--
二叉树
的最小深度
题目:给定一个
二叉树
,找出其最小深度。最小深度是从根节点到最近叶子节点的最短路径上的节点数量。说明:叶子节点是指没有子节点的节点。
minningl
·
2024-08-25 05:35
(贪心)
LeetCode
45. 跳跃游戏 II
原题链接一.题目描述给定一个长度为n的0索引整数数组nums。初始位置为nums[0]。每个元素nums[i]表示从索引i向前跳转的最大长度。换句话说,如果你在nums[i]处,你可以跳转到任意nums[i+j]处:0=n-1,说明此时可以到达终点,直接break即可。(2)如果大于等于,说明可以到达终点,直接break即可。最后只需要返回res的值即可。一下是代码随想录中的一个代码执行流程图,大
原来你也是码农
·
2024-08-25 03:05
LeetCode
贪心算法
数据结构
leetcode
算法
贪心算法
c++
(贪心)
LeetCode
135. 分发糖果
原题链接一.题目描述n个孩子站成一排。给你一个整数数组ratings表示每个孩子的评分。你需要按照以下要求,给这些孩子分发糖果:每个孩子至少分配到1个糖果。相邻两个孩子评分更高的孩子会获得更多的糖果。请你给每个孩子分发糖果,计算并返回需要准备的最少糖果数目。示例1:输入:ratings=[1,0,2]输出:5解释:你可以分别给第一个、第二个、第三个孩子分发2、1、2颗糖果。示例2:输入:ratin
原来你也是码农
·
2024-08-25 03:05
贪心算法
LeetCode
leetcode
算法
数据结构
c++
贪心算法
(贪心 + 双指针)
LeetCode
455. 分发饼干
原题链接一.题目描述假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子i,都有一个胃口值g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干j,都有一个尺寸s[j]。如果s[j]>=g[i],我们可以将这个饼干j分配给孩子i,这个孩子会得到满足。你的目标是尽可能满足越多数量的孩子,并输出这个最大数值。示例1:输入:g=[1,2,3],s=[1
原来你也是码农
·
2024-08-25 03:35
贪心算法
LeetCode
leetcode
算法
数据结构
c++
贪心算法
职场和发展
LeetCode
-79-单词搜索(Word Search)
LeetCode
-79-单词搜索(WordSearch)79.单词搜索难度中等908收藏分享切换为英文接收动态反馈给定一个mxn二维字符网格board和一个字符串单词word。
蒋斌文
·
2024-08-25 03:05
LeetCode
123:买卖股票的最佳时机Ⅲ
题目描述给定一个数组,它的第i个元素是一支给定的股票在第i天的价格。设计一个算法来计算你所能获取的最大利润。你最多可以完成两笔交易。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。代码/*dp[i]:dp[i][0]不操作dp[i][1]第一次持有:分两种情况,今天之前已经买入或今天买入dp[i][2]第一次卖出:分两种情况,今天之前已经卖出或今天卖出dp[i][3]第二次买入
一个小猴子`
·
2024-08-25 02:02
LeetCode
算法
leetcode
动态规划
C++
数据结构
(贪心)
LeetCode
1005. K 次取反后最大化的数组和
原题链接一.题目描述给你一个整数数组nums和一个整数k,按以下方法修改该数组:选择某个下标i并将nums[i]替换为-nums[i]。重复这个过程恰好k次。可以多次选择同一个下标i。以这种方式修改数组后,返回数组可能的最大和。示例1:输入:nums=[4,2,3],k=1输出:5解释:选择下标1,nums变为[4,-2,3]。示例2:输入:nums=[3,-1,0,2],k=3输出:6解释:选择
原来你也是码农
·
2024-08-25 02:30
LeetCode
贪心算法
数据结构
leetcode
算法
c++
「数组」逆序对 /
LeetCode
LCR 170(C++)
目录前置知识概述思路算法过程复杂度Code前置知识在本篇文章之前,你应该先掌握归并排序的基本技巧,详见:「数组」归并排序/if语句优化|小区间插入优化(C++)概述
LeetCode
LCR076:在股票交易中
Daking-
·
2024-08-25 01:21
「数组」
#
「数组::枚举」
leetcode
算法
leetcode
400. 第N个数字(python)
题目链接题目描述:在无限的整数序列1,2,3,4,5,6,7,8,9,10,11,…中找到第n个数字。注意:n是正数且在32为整形范围内(n<231)。示例1:输入:3输出:3示例2:输入:11输出:0说明:第11个数字在序列1,2,3,4,5,6,7,8,9,10,11,…里是0,它是10的一部分。解题思路:1.先确定第n个数字所在的数字是几位数的1-9是一位数10-189是两位数(9+(99-
洛洛洛洛洛洛洛
·
2024-08-24 23:14
leetcode
LeetCode
leetcode
242:有效的字母异位词
有效的字母异位词给定两个字符串*s*和*t*,编写一个函数来判断*t*是否是*s*的字母异位词。**注意:**若*s*和*t*中每个字符出现的次数都相同,则称*s*和*t*互为字母异位词。publicbooleanisAnagram(Strings,Stringt){HashMapmap=newHashMap<>();for(inti=0;i
0cfjg0
·
2024-08-24 23:13
leetcode
java
开发语言
[
LeetCode
笔记]965. 单值
二叉树
/*965.单值
二叉树
如果
二叉树
每个节点都具有相同的值,那么该
二叉树
就是单值
二叉树
。只有给定的树是单值
二叉树
时,才返回true;否则返回false。
Mo_Jianjun
·
2024-08-24 23:10
LeetCode笔记
leetcode
算法
二叉树
——19.修剪二叉搜索树
力扣题目链接给定一个二叉搜索树,同时给定最小边界L和最大边界R。通过修剪二叉搜索树,使得所有节点的值在[L,R]中(R>=L)。你可能需要改变树的根节点,所以结果应当返回修剪好的二叉搜索树的新的根节点。解题思路:二叉搜索树具有以下性质:对于任意节点root,其左子树上所有节点的值都小于root.val。其右子树上所有节点的值都大于root.val。根据这一性质,修剪树的过程可以递归地进行,判断当前
plutomty
·
2024-08-24 20:28
算法
C语言 |
Leetcode
C语言题解之第371题两整数之和
题目:题解:intgetSum(inta,intb){intc;while(b){c=(unsignedint)(a&b)<<1;a^=b;b=c;}returna;}
DdddJMs__135
·
2024-08-24 19:48
分享
C语言
Leetcode
题解
C语言 |
Leetcode
C语言题解之第274题H指数
题目:题解:inthIndex(int*citations,intcitationsSize){intleft=0,right=citationsSize;intmid=0,cnt=0;while(left>1;cnt=0;for(inti=0;i=mid){cnt++;}}if(cnt>=mid){//要找的答案在[mid,right]区间内left=mid;}else{//要找的答案在[0,m
DdddJMs__135
·
2024-08-24 18:48
分享
C语言
Leetcode
题解
C语言 |
Leetcode
C语言题解之第49题字母异位词分组
题目:题解:/*1.将字符串原串与副本进行绑定成一个节点2.对字符串副本进行按ascii码表进行从小到大排序3.按照字符串进行比较排序4.合并*/typedefstructNode{char*s;char*s_vice;intlen;}Node;voidsortShellChar(char*s,intlen){for(intdistance=len/2;distance!=0;distance/=
DdddJMs__135
·
2024-08-24 18:48
分享
C语言
Leetcode
题解
【
LeetCode
刷题笔记】10.有序数组的平方 11.长度最小的子数组
10.有序数组的平方(977)题目给你一个按非递减顺序排序的整数数组nums,返回每个数字的平方组成的新数组,要求也按非递减顺序排序。示例1:输入:nums=[-4,-1,0,3,10]输出:[0,1,9,16,100]解释:平方后,数组变为[16,1,0,9,100]排序后,数组变为[0,1,9,16,100]示例2:输入:nums=[-7,-3,2,3,11]输出:[4,9,9,49,121]
COTAS
·
2024-08-24 16:36
LeetCode刷题笔记
leetcode
笔记
算法
【
LeetCode
刷题笔记】6.移除元素(27)
题目给你一个数组nums和一个值val,你需要原地移除所有数值等于val的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用O(1)额外空间并原地修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。说明:为什么返回数值是整数,但输出的答案是数组呢?请注意,输入数组是以**「引用」**方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。你可以想象内部操
COTAS
·
2024-08-24 16:06
LeetCode刷题笔记
leetcode
笔记
算法
Golang |
Leetcode
Golang题解之第371题两整数之和
题目:题解:funcgetSum(a,bint)int{forb!=0{carry:=uint(a&b)<<1a^=bb=int(carry)}returna}
__AtYou__
·
2024-08-24 10:23
经验分享
Golang
Leetcode
题解
【Hot100】
LeetCode
—104.
二叉树
的最大深度
目录1-思路队列——层序遍历2-实现⭐104.
二叉树
的最大深度——题解思路3-ACM实现原题连接:104.
二叉树
的最大深度1-思路队列——层序遍历1-借助队列实现层序遍历Queuequeue=newLinkedListres
山脚ice
·
2024-08-24 06:29
#
Hot100
leetcode
算法
【
LeetCode
每日一题】——1046.最后一块石头的重量
文章目录一【题目类别】二【题目难度】三【题目编号】四【题目描述】五【题目示例】六【题目提示】七【解题思路】八【时间频度】九【代码实现】十【提交结果】一【题目类别】优先队列二【题目难度】简单三【题目编号】1046.最后一块石头的重量四【题目描述】有一堆石头,每块石头的重量都是正整数。每一回合,从中选出两块最重的石头,然后将它们一起粉碎。假设石头的重量分别为x和y,且xpQueue=newPriori
IronmanJay
·
2024-08-24 06:26
LeetCode
算法
1046.最后一块石头的重量
数据结构
LeetCode
堆
优先队列
大顶堆
备战秋招60天算法挑战,Day8
题目链接:https://
leetcode
.cn/problems/find-minimum-in-rotated-sorted-array/视频题解:https://www.bilibili.com/
华南溜达虎
·
2024-08-24 05:48
数据结构与算法
算法
备战秋招60天算法挑战,Day11
题目链接:https://
leetcode
.cn/problems/longest-substring-without-repeating-characters/视频题解:https://www.bilibili.com
华南溜达虎
·
2024-08-24 05:48
数据结构与算法
算法
数据结构
备战秋招60天算法挑战,Day6
题目链接:https://
leetcode
.cn/problems/best-time-to-buy-and-sell-stock/视频题解:https://b23.tv/MDoza2J
LeetCode
121
华南溜达虎
·
2024-08-24 05:18
数据结构与算法
算法
每日一题_1310.子数组异或查询
leetcode
每日一题image.png注意:如果是暴力做法的话,是会超时的,应该考虑异或的性质性质1:,性质2:异或通常都是使用异或和来解决问题,观察下图可以建立如下prefix(前缀数组)image.png
Dmm
·
2024-08-24 05:13
LeetCode
209. 长度最小的子数组(JAVA)
题目给定一个含有n个正整数的数组和一个正整数s,找出该数组中满足其和≥s的长度最小的连续子数组,并返回其长度。如果不存在符合条件的连续子数组,返回0。示例:输入:s=7,nums=[2,3,1,2,4,3]输出:2解释:子数组[4,3]是该条件下的长度最小的连续子数组。进阶:如果你已经完成了O(n)时间复杂度的解法,请尝试O(nlogn)时间复杂度的解法。解题思路publicintminSubAr
freesan44
·
2024-08-24 05:42
备战秋招60天算法挑战,Day24
题目链接:https://
leetcode
.cn/problems/sum-of-two-integers/视频题解:https://www.bilibili.com/video/BV1RZ421K7YF
华南溜达虎
·
2024-08-24 04:15
数据结构与算法
算法
数据结构
java
c++
python
【深度学习入门项目】一文带你弄清决策树(鸢尾花分类)
顾名思义,决策树算法的表现形式可以直观理解为一棵树(可以是
二叉树
或非
二叉树
)。一棵决策树一般包含一个根节点、一系列内部节点和叶节点,一个叶节点对应一个
Better Rose
·
2024-08-24 03:07
深度学习
深度学习
决策树
分类
2024计算机保研真题与面试资料整理(自己整理)
常见问题3.3遇到的问答*4计算机语言4.1考察范围4.2常见问题4.3遇到的问答*5其他专业课5.1考察范围5.2常见问题5.3遇到的问答*1数据结构1.1考察范围堆、栈、队列、链表等数据结构树:红黑树、
二叉树
的各类分支等图
Better Rose
·
2024-08-24 03:37
保研
面试
算法
职场和发展
搜索
二叉树
进阶之AVL树
前言二叉搜索树(BST)是一种基础的数据结构,能够高效地进行搜索、插入和删除操作。然而,在最坏的情况下,普通的BST可能会退化成一条链表,导致操作效率降低。为了避免这种情况,出现了自平衡二叉搜索树,AVL树就是其中的一种。一、什么是AVL树?AVL树是Adelson-Velsky和Landis在1962年发明的一种自平衡二叉搜索树。它的特点是通过对树进行旋转操作来保持平衡,以确保在最坏情况下,树的
渡我白衣
·
2024-08-24 02:29
c++知识点
数据结构
c++
约瑟夫环问题(模板题,递推,树状数组,双端队列)
文章目录最后活的人(递推)[LCR187.破冰游戏](https://
leetcode
.cn/problems/yuan-quan-zhong-zui-hou-sheng-xia-de-shu-zi-lcof
匪石1
·
2024-08-24 00:52
算法
约瑟夫环
数学
[
LeetCode
]160.相交链表(python)
1.代码classSolution:defgetIntersectionNode(self,headA:ListNode,headB:ListNode)->Optional[ListNode]:ifnotheadAornotheadB:returnNonepoint1=headApoint2=headBhas_switched1=Falsehas_switched2=Falseintersecti
xyhaaab
·
2024-08-23 21:58
leetcode
链表
python
leetcode
80:删除有序数组中的重复项II
leetcode
80:删除有序数组中的重复项II给你一个有序数组nums,请你**原地**删除重复出现的元素,使每个元素最多出现两次,返回删除后数组的新长度。
Yingmu__
·
2024-08-23 21:58
leetcode
leetcode
上一页
9
10
11
12
13
14
15
16
下一页
按字母分类:
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
其他