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刷题
Day1|Leetcode704. 二分查找 Leetcode27. 移除元素
前言:第一次用
leetcode刷题
,格式有点不适应,之前都是acm模式,需要熟悉熟悉Leetcode704二分查找题目链接704二分查找解题思路:本题目只运用二分法(原理:不断分段查找区间内的值),没有别的坑
吼吼848
·
2023-11-30 00:38
leetcode
算法
笔记
LeetCode刷题
day32|122.买卖股票的最佳时机II、55.跳跃游戏、45.跳跃游戏Ⅱ
文章目录一、122.买卖股票的最佳时机II二、55.跳跃游戏三、45.跳跃游戏Ⅱ一、122.买卖股票的最佳时机II这道题的精髓是:把相邻的两天捆绑到一起,如果第二天比第一天高,则在第一天买入,第二天卖出;如果第二天比第一天低,则不进行操作。以下是代码部分:publicclass买卖股票的最佳时机II122{//看的题解:思路——>算出每天较前一天的利益,如果是正收益,就在前一天买入,否则不买pub
霍格沃兹程序员
·
2023-11-30 00:37
leetcode
游戏
算法
C#基于SortedList 的优先队列
在
LeetCode刷题
,总是遇到优先队列解法,但是呢,c#并没有提供这种数据结构,没办法,只能自造一个PriorityQueue了publicclassPriorityQueue{IComparercomparer
落枫箫残
·
2023-11-29 23:36
c#
开发语言
LeetCode刷题
总结(1)--栈、队列、堆
队列:先进先出栈:先进后出堆(优先队列):逻辑结构上是完全二叉树结构,其中每个字数的最大值(最小值)节点是头节点。实际结构常用数组实现。建立一个大根堆时间复杂度O(n)基础题1.数组实现栈、队列;实现堆排序栈classArrayStack{intmaxSize;inttop;int[]stack;publicArrayStack(intmaxSize){this.maxSize=maxSize;t
DopaM1ne
·
2023-11-29 23:09
leetcode刷题
详解十二
回文子串首先回文子串问题涉及到的都是单个字符串,所以如果是单个字符串用动态规划的基本都是二维的,i-j其次,回文字符串,都是从后往前遍历的,这个要记住。因为dp的状态转移方程特性决定的647.回文子串还是用动态规划吧,中心扩散没太看懂参考链接说一下自己的想法,因为就单个字符串,因此我之前说过单个字符串的话是要有范围的。为什么外循环会从len-1开始,对于字符串“cabac来说”,如果s[0]的c=
weixin_43209472
·
2023-11-29 19:05
leetcode
算法
职场和发展
leetcode刷题
详解十
188.买卖股票的最佳时机IV(最多买卖k次)注意事项这道题和最多买卖两次是一模一样的思路就是把2换成k了但是还是有几个地方需要注意的给的整数数组可能为0k其实没有很大,可以想一下,最多为n/2(n是数组的长度)intmaxProfit(intk,vector&prices){intn=prices.size();if(n==0){return0;}k=min(k,n/2);vector>>dp(
weixin_43209472
·
2023-11-29 19:04
leetcode
算法
职场和发展
leetcode刷题
详解八
343.整数拆分将i拆分成j和i−j的和,且i−j不再拆分成多个正整数,此时的乘积是j×(i−j);将i拆分成j和i−j的和,且i−j继续拆分成多个正整数,此时的乘积是j×dp[i−j]。一个大小为i的数可以分为j和i-j----------------------|j|(i-j)|----------------------intintegerBreak(intn){vectordp(n+1);
weixin_43209472
·
2023-11-29 19:34
leetcode
算法
职场和发展
leetcode刷题
详解十一
⭕️583.两个字符串的删除操作思路:核心代码就是最长公共子序列,但是需要注意的是结果就是如果说公共子序列为0,则需要两个字符串长度的才行如果有,就是n+m∗2dp[n][m]n+m*2dp[n][m]n+m∗2dp[n][m]intminDistance(stringword1,stringword2){intn=word1.size();intm=word2.size();vector>dp(
weixin_43209472
·
2023-11-29 19:02
leetcode
算法
职场和发展
LeetCode刷题
分类之二叉树 965单值二叉树
1.题目如果二叉树每个节点都具有相同的值,那么该二叉树就是单值二叉树。只有给定的树是单值二叉树时,才返回true;否则返回false。示例1:示例1输入:[1,1,1,1,1,null,1]输出:true示例2:示例2输入:[2,2,2,5,2]输出:false提示:给定树的节点数范围是[1,100]每个节点的值都是整数,范围为[0,99]2.思路如果二叉树根节点为空,该树肯定不是单值二叉树建立一
逍遥白亦
·
2023-11-29 19:07
LeetCode刷题
——最长连续序列#128#Medium
最长连续序列题目的思路探讨与源码最长连续序列的题目如下图,该题属于数组类型的题目,主要考察对于数组以及遍历的理解和认识。本文的题目作者想到2种方法,第一种方法是哈希表方法,第二种方法是动态规划方法。其中第一种方法使用java写、第二种方法使用Python写,当然这可能不是最优的解法,还希望各位大佬给出更快的算法。本人认为该题目可以使用哈希表算法,首先新建一个集合,循环遍历数组,把不重复的值加入到集
喷火龙与水箭龟
·
2023-11-29 16:04
LeetCode刷题
算法
数据结构
java
leetcode
动态规划
【
leetcode刷题
】14. Longest Common Prefix
原题:https://leetcode.com/problems/longest-common-prefix/题意:返回一个所有元素都是字符串的列表中所有字符串的共同前缀思路:首先假设第一个词整个是一个共同前缀,然后将它整体和第二个词与前缀等长部分比较,只要不同就把result剔除一位,一直到到相同为止;然后再继续将前缀与第三个词比较,一直进行;如果中间前缀result已经成为了空字符串,则直接输
maodoudou168
·
2023-11-29 13:10
完全平方数——(
LeetCode刷题
)
279.完全平方数给你一个整数n,返回和为n的完全平方数的最少数量。完全平方数是一个整数,其值等于另一个整数的平方;换句话说,其值等于一个整数自乘的积。例如,1、4、9和16都是完全平方数,而3和11不是。示例1:输入:n=12输出:3解释:12=4+4+4示例2:输入:n=13输出:2解释:13=4+9提示:1squares=generateSquares(n);Queuequeue=newLi
酷酷的懒虫
·
2023-11-29 09:58
LeetCode
算法
leetcode
leetcode刷题
:动态规划02(爬楼梯)
70.爬楼梯力扣题目链接假设你正在爬楼梯。需要n阶你才能到达楼顶。每次你可以爬1或2个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定n是一个正整数。示例1:输入:2输出:2解释:有两种方法可以爬到楼顶。1阶+1阶2阶示例2:输入:3输出:3解释:有三种方法可以爬到楼顶。1阶+1阶+1阶1阶+2阶2阶+1阶*第一级楼梯1*第二级楼梯211或2*第三级楼梯311112213*第四级楼梯51111
涛涛英语学不进去
·
2023-11-29 02:23
动态规划
leetcode
动态规划
算法
LeetCode1-500题汇总,希望对你有点帮助!
LeetCode刷题
实战1:在数组上遍历出花样
LeetCode刷题
实战2:用链表模拟加法
LeetCode刷题
实战3:最长不重复子串
LeetCode刷题
实战4:两个正序数组的中
程序IT圈
·
2023-11-28 19:55
二叉树
链表
lighttpd
ipad
tiff
Leetcode刷题
c++之907. 子数组的最小值之和
题目描述:给定一个整数数组arr,找到min(b)的总和,其中b的范围为arr的每个(连续)子数组。由于答案可能很大,因此返回答案模10^9+7。示例1:输入:arr=[3,1,2,4]输出:17解释:子数组为[3],[1],[2],[4],[3,1],[1,2],[2,4],[3,1,2],[1,2,4],[3,1,2,4]。最小值为3,1,2,4,1,1,2,1,1,1,和为17。示例2:输入
DRX.Deft
·
2023-11-28 09:02
leetcode
c++
算法
LeetCode刷题
Python之907. 子数组的最小值之和
给定一个整数数组arr,找到min(b)的总和,其中b的范围为arr的每个(连续)子数组。由于答案可能很大,因此返回答案模10^9+7。示例1:输入:arr=[3,1,2,4]输出:17解释:子数组为[3],[1],[2],[4],[3,1],[1,2],[2,4],[3,1,2],[1,2,4],[3,1,2,4]。最小值为3,1,2,4,1,1,2,1,1,1,和为17。示例2:输入:arr=
狐言-z
·
2023-11-28 09:01
leetcode
算法
职场和发展
LeetCode刷题
-数组
LeetCode刷题
-数组数组的遍历485.最大连续1的个数思路:当前nums[i]为1就计数加一,否则清零publicintfindMaxConsecutiveOnes(int[]nums){intcount
毒爪的小新
·
2023-11-28 08:22
#
数组
leetcode
算法
java
leetcode刷题
:17.电话号码的字母组合
leetcode原题网页题目描述:给定一个仅包含数字2-9的字符串,返回所有它能表示的字母组合。答案可以按任意顺序返回。给出数字到字母的映射如下(与电话按键相同)。注意1不对应任何字母。思路:使用vector,进行深度优先遍历每个按键所对应的字母都是固定的。可以先创建一个数字到字母的映射数组。vectorNumStrArr={"","","abc","def","ghi","jkl","mno",
码者阿铭
·
2023-11-28 01:21
算法题
算法
leetcode
深度优先
LeetCode每日一题(java version)--Array(数组专栏)
此博客是记录
leetcode刷题
数组相关题目,题目参考为github上cyc2018大神,同时结合自己理解,整理成文283移动零点(Easy)//Givenanarraynums,writeafunctiontomoveall0
濯风
·
2023-11-28 00:39
leetcode每日一题
leetcode
java
LeetCode刷题
笔记 907. 子数组的最小值之和
题目描述给定一个整数数组A,找到min(B)的总和,其中B的范围为A的每个(连续)子数组。由于答案可能很大,因此返回答案模10^9+7。示例:输入:[3,1,2,4]输出:17解释:子数组为[3],[1],[2],[4],[3,1],[1,2],[2,4],[3,1,2],[1,2,4],[3,1,2,4]。最小值为3,1,2,4,1,1,2,1,1,1,和为17。Sample&DemoCode1
XIIV13
·
2023-11-27 22:27
LeetCode笔记
#
动态规划
LeetCode刷题
笔记-28.实现strStr()
LeetCode刷题
笔记-28.实现strStrC代码注意点prefixtable动态规划法(未完待续)结果题目C代码int*get_prefix_table(char*pp,intpsize){inti
sz66cm
·
2023-11-27 18:59
算法刷题
leetcode
c语言
算法
leetcode刷题
笔记8-二叉树(未完待续)
二叉树代码随想录刷题笔记代码随想录(programmercarl.com)二叉树理论基础二叉树的种类在我们解题过程中二叉树有两种主要的形式:满二叉树和完全二叉树。满二叉树满二叉树:如果一棵二叉树只有度为0的结点和度为2的结点,并且度为0的结点在同一层上,则这棵二叉树为满二叉树。如图所示:这棵二叉树为满二叉树,也可以说深度为k,有2^k-1个节点的二叉树。完全二叉树完全二叉树:在完全二叉树中,除了最
infinite.?
·
2023-11-27 18:20
算法笔记
leetcode
算法
数据结构
LeetCode刷题
笔记(Two Sum II - Input array is sorted)
该题其实是前几天准备刷的题,当时由于时间不够没来及的编完,今天编完并经过一番调试后,提交也取得了很好的效果。整体感觉不算太难,下面就来具体分享一下该题的解法。具体题目如下:Givenanarrayofintegersthatisalreadysortedinascendingorder,findtwonumberssuchthattheyadduptoaspecifictargetnumber.T
Jack-He
·
2023-11-27 18:18
LeetCode刷题笔记篇
LeetCode
刷题笔记
Two
Sum
II
-
Input
array
is
so
C++
找工作
LeetCode刷题
笔记(Non-overlapping Intervals)
刚刚刷了一道题感觉难度还行,不过这道题既可以用线性规划法解,也可以用贪心算法解,下面就分享一下刚刷的这道题吧!题目如下:题意分析:给定一个包含若干区间的集合,请尽可能少的删掉子区间以确保剩余的区间不重叠,最后返回删掉的区间个数即可。方法一(贪婪算法)先按照区间结尾排序,每次选择结尾元素最小且与前一个区间不重叠的区间,最后将区间的集合长度减去组成最长不重叠区间的区间个数(即res值)的结果返回即可。
Jack-He
·
2023-11-27 18:18
LeetCode刷题笔记篇
LeetCode刷题笔记
Non-overlapping
Intervals
LeetCode
刷题笔记
C++
【
LeetCode刷题
笔记-87 42:接雨水(三解法)】
题目:1.首先是面积法:算出每一层的面积相加之后减去柱状图的面积就是雨水面积,这个方法是真的秒,一开始还真想不到。第一层高度为1;2.动态规划法:本质上是暴力算法的优化。对于下标i,水能到达的最大高度等于下标i两边的最大高度的最小值,下标i处能接的水的量等于下标i处的水能到达的最大高度减去height【i】。因此就用两个数组分别记录下标i时左边的最大值和右边的最大值。3.单调栈之前的笔记里面使用过
空、白、
·
2023-11-27 09:25
算法
c++
leetcode
算法
【
LeetCode刷题
笔记Java】42.接雨水
题目:给定n个非负整数表示每个宽度为1的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。示例:输入:height=[0,1,0,2,1,0,1,3,2,1,2,1]输出:6解释:上面是由数组[0,1,0,2,1,0,1,3,2,1,2,1]表示的高度图,在这种情况下,可以接6个单位的雨水(蓝色部分表示雨水)。暴力方法publicinttrap(int[]height){intresult=
C-Liueasymoney
·
2023-11-27 09:24
LeetCode
动态规划
单调栈
leetcode
算法
动态规划
数据结构
java
Leetcode刷题
笔记之:栈
这里写目录标题[155.最小栈](https://leetcode-cn.com/problems/min-stack/)[150.逆波兰表达式求值](https://leetcode-cn.com/problems/evaluate-reverse-polish-notation/)[394.字符串解码](https://leetcode-cn.com/problems/decode-strin
RealDuxy
·
2023-11-27 09:24
Leetcode
算法
leetcode
算法
数据结构
LeetCode刷题
系列 -- 974. 和可被 K 整除的子数组
给定一个整数数组nums和一个整数k,返回其中元素之和可被k整除的(连续、非空)子数组的数目。子数组是数组的连续部分。示例1:输入:nums=[4,5,0,-2,-3,1],k=5输出:7解释:有7个子数组满足其元素之和可被k=5整除:[4,5,0,-2,-3,1],[5],[5,0],[5,0,-2,-3],[0],[0,-2,-3],[-2,-3]示例2:输入:nums=[5],k=9输出:0
在河之洲木水
·
2023-11-27 06:46
LeetCode
leetcode
算法
数据结构
二值矩阵求连通域
说白了就是BFS或者DFS,
Leetcode刷题
时做过了,不要怕。这里增加了一个Point数据结构。代码实现的四连通域,八连通域其实一样。
可乐0221
·
2023-11-27 02:25
C++ STL常用函数总结
STL常用函数总结在各大OJ或者
leetcode刷题
时,会不可避免地用到很多很多STL容器或者STL中的常用算法,然而有一些自己用的不熟的经常会在比赛时突然忘掉它的用法,参数,返回类型等,今天就来总结一下这些常用的能令我们解题过程事半功倍的函数
_dingzhen
·
2023-11-27 00:30
C/C++
STL
C++
LeetCode刷题
-我会翻转二叉树,谷歌还要我吗?
前言说明算法学习,日常刷题记录。题目连接翻转二叉树题目内容翻转一棵二叉树。示例:输入:翻转二叉树输入输出:翻转二叉树输出备注:这个问题是受到MaxHowell的原问题启发的:谷歌:我们90%的工程师使用您编写的软件(Homebrew),但是您却无法在面试时在白板上写出翻转二叉树这道题,这太糟糕了。分析过程翻转二叉树很简单,可以使用递归法。把二叉树看成是根节点、左孩子、右孩子的整体,整体翻转根节点的
小鲨鱼FF
·
2023-11-26 22:57
leetcode刷题
笔记(Golang)--198. House Robber
198.HouseRobberYouareaprofessionalrobberplanningtorobhousesalongastreet.Eachhousehasacertainamountofmoneystashed,theonlyconstraintstoppingyoufromrobbingeachofthemisthatadjacenthouseshavesecuritysystem
圆滚滚coder
·
2023-11-26 22:01
leetcode
算法
go
动态规划
Leetcode刷题
笔记(c++)_热题 HOT 100_236. 二叉树的最近公共祖先
递归classSolution{public:TreeNode*out;booldfs(TreeNode*root,TreeNode*p,TreeNode*q){if(!root)return0;boolleft=dfs(root->left,p,q);boolright=dfs(root->right,p,q);if((left&&right)||((root->val==p->val||roo
大风吹~~~~~
·
2023-11-26 20:47
leetcode
c++
深度优先
Leetcode刷题
总结-2.动态规划篇
Leetcode刷题
总结动态规划算法刷题心得、总结文章目录
Leetcode刷题
总结前言一、动态规划题思路总结前言动态规划和贪心算法有一些相似之处,但是也有一些区别,动态规划中每一个状态一定是由上一个状态推导出来的
问凝
·
2023-11-26 16:01
leetcode
动态规划
Leetcode刷题
(动态规划之三)| 322.零钱兑换;279.完全平方数;139.单词拆分;198.打家劫舍;213.打家劫舍II;337.打家劫舍III;121.买卖股票的最佳时机 I II
一、零钱兑换Leetcode零钱兑换硬币是要遍历的物品,总金额是背包的容量。本题是要求最少硬币数量,硬币是组合数还是排列数都无所谓!所以两个for循环先后顺序怎样都可以!classSolution{publicintcoinChange(int[]coins,intamount){intmax=Integer.MAX_VALUE;int[]dp=newint[amount+1];//初始化dp数组
Jayfee11
·
2023-11-26 16:01
leetcode
动态规划
算法
【C++】类和对象(下)
樊梓慕:个人主页个人专栏:《C语言》《数据结构》《蓝桥杯试题》《
LeetCode刷题
笔记》《实训项目》《C++》每一个不曾起舞的日子,都是对生命的辜负目录前言1.初始化列表1.1引入1.2初始化列表1.3explicit
樊梓慕
·
2023-11-26 12:07
C++
c++
开发语言
c语言
学习
【C++】内存管理(new与delete)
樊梓慕:个人主页个人专栏:《C语言》《数据结构》《蓝桥杯试题》《
LeetCode刷题
笔记》《实训项目》《C++》每一个不曾起舞的日子,都是对生命的辜负前言本篇文章我们一起来学习C++的内存管理方式,实际上
樊梓慕
·
2023-11-26 12:07
C++
c++
开发语言
学习
【Linux】权限
樊梓慕:个人主页个人专栏:《C语言》《数据结构》《蓝桥杯试题》《
LeetCode刷题
笔记》《实训项目》《C++》《Linux》每一个不曾起舞的日子,都是对生命的辜负目录前言1.Linux权限的概念1.1
樊梓慕
·
2023-11-26 12:03
Linux
linux
运维
服务器
学习
LeetCode刷题
:27.移除链表元素
文章目录⭐️27.移除链表元素⭐️题目描述解题思路代码本题的题解代码是用C语言编写的。博客主页:2023Fighting的博客主页欢迎关注点赞收藏⭐️留言本文由2023Fighting原创,CSDN首发!首发时间:2023年10月30日参考在线编程网站:牛客网力扣博主的码云gitee,平常博主写的程序代码都在里面。文章仅供参考,如果发现错误,请及时告知我哦!感谢感谢!题目链接:203.移除链表元素
2023Fighting
·
2023-11-26 10:52
LeetCode
leetcode
链表
算法
c语言
java二叉树转换为链表_
leetcode刷题
笔记-114. 二叉树展开为链表(java实现)
leetcode刷题
笔记-114.二叉树展开为链表(java实现)题目描述给你二叉树的根结点root,请你将它展开为一个单链表:展开后的单链表应该同样使用TreeNode,其中right子指针指向链表中下一个结点
夜刃猫
·
2023-11-25 20:07
java二叉树转换为链表
Leetcode刷题
笔记:149. Max Points on a Line
题干:Givenanarrayofpointswherepoints[i]=[xi,yi]representsapointontheX-Yplane,returnthemaximumnumberofpointsthatlieonthesamestraightline.Constraints:1line=newHashMap<>();intx0=points[i][0];inty0=points[i
Jianhui_D
·
2023-11-25 18:55
leetcode
算法
LeetCode刷题
系列 -- 1457. 二叉树中的伪回文路径
给你一棵二叉树,每个节点的值为1到9。我们称二叉树中的一条路径是「伪回文」的,当它满足:路径经过的所有节点值的排列中,存在一个回文序列。请你返回从根到叶子节点的所有路径中伪回文路径的数目。示例1:输入:root=[2,3,1,3,1,null,1]输出:2解释:上图为给定的二叉树。总共有3条从根到叶子的路径:红色路径[2,3,3],绿色路径[2,1,1]和路径[2,3,1]。在这些路径中,只有红色
在河之洲木水
·
2023-11-25 14:37
二叉树
LeetCode
leetcode
算法
职场和发展
Leetcode刷题
详解——三步问题
1.题目链接:面试题08.01.三步问题2.题目描述:三步问题。有个小孩正在上楼梯,楼梯有n阶台阶,小孩一次可以上1阶、2阶或3阶。实现一种方法,计算小孩有多少种上楼梯的方式。结果可能很大,你需要对结果模1000000007。示例1:输入:n=3输出:4说明:有四种走法示例2:输入:n=5输出:13提示:n范围在[1,1000000]之间3.算法(动态规划)3.1算法思路:状态表示这道题可以根据【
追梦阿杰
·
2023-11-25 08:53
算法
leetcode
算法
职场和发展
动态规划
Leetcode刷题
详解——斐波那契数
1.题目链接:509.斐波那契数2.题目描述:斐波那契数(通常用F(n)表示)形成的序列称为斐波那契数列。该数列由0和1开始,后面的每一项数字都是前面两项数字的和。也就是:F(0)=0,F(1)=1F(n)=F(n-1)+F(n-2),其中n>1给定n,请计算F(n)。示例1:输入:n=2输出:1解释:F(2)=F(1)+F(0)=1+0=1示例2:输入:n=3输出:2解释:F(3)=F(2)+F
追梦阿杰
·
2023-11-25 08:53
leetcode
动态规划
算法
LeetCode刷题
内含详解
1.两数之和//暴力匹配算法,思路简单,时间复杂度高publicint[]twoSum(int[]nums,inttarget){for(inti=0;ihashMap=newHashMap();//建立一个哈利表用于添加元素和查找intnum=0;//用于给数组元素下标计数for(inti:nums){//循环得到nums每一个元素,用于添加哈希表和查找if(hashMap.containsKe
yan扬
·
2023-11-25 08:47
leetcode
算法
java
leetcode刷题
详解一
算法题常用APIstd::accumulate函数原型:templateTaccumulate(InputItfirst,InputItlast,Tinit);一般求和的,代码如下:intsum=accumulate(vec.begin(),vec.end(),0);详细用法参考lower_bound()intlower_bound(起始地址,结束地址,要查找的数值)返回的是数值第一个等于某元素的
weixin_43209472
·
2023-11-25 08:07
leetcode
java
linux
leetcode刷题
详解二
160.相交链表本质上是走过自己的路,再走过对方的路,这是求两个链表相交的方法ListNode*getIntersectionNode(ListNode*headA,ListNode*headB){//本质上是走过自己的路,再走过对方的路if(headA==NULL||headB==NULL){returnNULL;}ListNode*temp_a=headA;ListNode*temp_b=he
weixin_43209472
·
2023-11-25 08:07
leetcode
linux
算法
leetcode刷题
详解三
2.两数相加思路:直接加,注意进位条件不要用if,核心代码在于sum=l1->val+l2->val+carry;ListNode*addTwoNumbers(ListNode*l1,ListNode*l2){ListNode*dummy=newListNode();ListNode*dummy_head=dummy;intcarry=0;intsum=0;intsingle=0;while(l1
weixin_43209472
·
2023-11-25 08:04
leetcode
linux
算法
Leetcode刷题
笔记——384. 打乱数组【洗牌算法】
题目思路对于构造函数以及reset函数比较简单,可以用一个类的私有变量保存下Nums(在构造函数中保存),每次调用reset()时将这个私有变量再赋值出去。对于shuffle(),要求等概率返回某个方案,或者说每个元素都等概率出现在每个位置中。可以使用Knuth洗牌算法,在O(n)的复杂度内等概率地返回某个方案。简单地说就是将数组分为两部分,一部分是完成随机的,一部分是原始数组。循环选择i,从[i
高木同学丶
·
2023-11-24 23:19
LeetCode
leetcode
数据结构
leetcode刷题
笔记——189.旋转数组
题目思路该题可使用较多方法,做题时我只想到第一种比较简单的方法,后看题解第二种方法由于第一种第一种classSolution{public:voidrotate(vector&nums,intk){intn=nums.size();vectornewArr(n);for(inti=0;i&nums,intstart,intend){while(start&nums,intk){intn=nums.
高木同学丶
·
2023-11-24 23:49
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
其他