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
力扣刷题---剑指
python_ACM模式《
剑指
offer刷题》链表2
题目:例如面试tips:询问有无时间复杂度或空间复杂度的限制。思路:本题的本质就是复杂链表的深拷贝1.暴力解法→第一次遍历原链表时构建一个复制了next的新链表,第二次遍历原链表,对每个原链表的节点的random从头寻找,同时同步在新链表寻找,即可找到复制链表每个节点的random。时复O(N^2),空复O(1)2.用空间换取时间,利用哈希表。在第一次遍历原链表时存储(原链表节点,新链表节点)的映
cuier520
·
2024-01-28 19:27
剑指offer练习
链表
数据结构
python_ACM模式《
剑指
offer刷题》链表3
题目:注意:
剑指
offer上对这道题目的描述是给定的删除节点是节点指针。这表明这道题可以用时间复杂度为O(1)的方式解决。
cuier520
·
2024-01-28 19:26
剑指offer练习
链表
数据结构
【JS
力扣刷题
笔记】76. 最小覆盖子串
这是跟着代码随想录的顺序学习算法的第?天。(二刷)以下是学习时自己的一些理解与笔记,如有错误欢迎指正与讨论。76.最小覆盖子串参考相关链接:76.最小覆盖子串笔记解本题的主要方法是,滑动窗口+Map。主要思路:left、right记录当前窗口的两端map记录t中各个字符的被覆盖情况,即键名为每个字符,对应的键值为目前滑动窗口中覆盖t所需要的该字符的数量,这意味着键值是有可能出现负数的情况,具体表示
Jamcy123
·
2024-01-28 17:53
javascript
leetcode
算法
学习
剑指
offer-二叉搜索树的后续遍历序列
题目描述:输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。举例二叉搜索树难点坑点这道题主要的难点是二叉树的后续遍历的关系,我们可以看到二叉树的根节点一定是序列的最后一个数据;所以此序列满足条件,注意二叉树为空时要返回falseclassSolution{public:boolVerifySquenceOfBS
yyming
·
2024-01-28 17:53
<
剑指
offer>面试题52:两个链表的第一个公共节点
题目描述输入两个链表,找出它们的第一个公共节点。题目解读方法一就是蛮力法,分别遍历第一个链表的每个结点和第二个链表的所有结点进行比较,遍历第二个链表的每个结点和第一个链表的所有结点进行比较。时间复杂度为O(mn).方法二:若两个单向链表有公共节点,则说明这两个链表从某一个节点开始,它们的后继节点都指向同一个节点。因为每个单向链表的节点都只有一个后继节点,故从第一个公共节点开始,它们所有的节点都是重
潘雪雯
·
2024-01-28 17:05
力扣刷题
50.实现 pow(x, n) ,即计算 x 的整数 n 次幂函数(即,x^n )
LeetCode50.实现pow(x,n)文章目录LeetCode50.实现pow(x,n)一、题目描述二、题解方法失败方法一失败方法二成功方法三一、题目描述 实现pow(x,n),即计算x的整数n次幂函数(即,x^n)。二、题解方法失败方法一 最直观最容易想到的一个方法,就是通过一个for循环求出结果,代码如下:classSolution:defmyPow(self,x:float,n:in
江南赴艽野
·
2024-01-28 16:11
Java刷题
leetcode
剑指
Offer 16.数值的整数次方 快速幂+ 递归
题目实现pow(x,n),即计算x的n次幂函数(即,xn)。不得使用库函数,同时不需要考虑大数问题。示例1:输入:x=2.00000,n=10输出:1024.00000示例2:输入:x=2.10000,n=3输出:9.26100示例3:输入:x=2.00000,n=-2输出:0.25000解释:2-2=1/22=1/4=0.25提示:-100.00?quickMul(x,N):1.0/quickM
HotRabbit.
·
2024-01-28 16:10
#
剑指offer
leetcode
算法
职场和发展
剑指
leetcode—Pow(x, n)(快速幂)
题目描述:实现pow(x,n),即计算x的n次幂函数。示例1:输入:2.00000,10输出:1024.00000示例2:输入:2.10000,3输出:9.26100示例3:输入:2.00000,-2输出:0.25000解释:2-2=1/22=1/4=0.25说明:-100.0=0?quickmul(x,N):1.0/quickmul(x,-N);}}快速幂循环迭代实现迭代实现参考leetcode
Devin Dever
·
2024-01-28 16:10
leetcode刷题之路
leetcode
算法
java
【
剑指
Offer】16-20题(快速幂实现pow()+递归全排列生成1-9999(n个9)+删除链表的节点+字符串DP+暴力解决表示数值的字符串)
文章目录数值的整数次方非递归递归打印从1到最大的n位数删除链表的节点拓展:删除排序链表中的重复元素正则表达式匹配表示数值的字符串数值的整数次方
剑指
Offer16.数值的整数次方-力扣(LeetCode)
喜欢乙醇的四氯化碳
·
2024-01-28 16:38
剑指offer
链表
深度优先
数据结构
动态规划
算法
【
剑指
offer】字符流中第一个只出现一次的字符(hash表,队列)
1、题目描述请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符”go”时,第一个只出现一次的字符是’g’。当从该字符流中读出前六个字符”google”时,第一个只出现一次的字符是’l’。如果当前字符流没有存在出现一次的字符,返回#字符。样例输入:"google"输出:"ggg#ll"解释:每当字符流读入一个字符,就进行一次判断并输出当前的第一个只出现一次的字符
邓泽军_3679
·
2024-01-28 16:18
java数据结构与算法刷题-----LeetCode328. 奇偶链表
java数据结构与算法刷题目录(
剑指
Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article
殷丿grd_志鹏
·
2024-01-28 14:33
算法
java
链表
算法
leetcode
java数据结构与算法刷题-----LeetCode242. 有效的字母异位词
java数据结构与算法刷题目录(
剑指
Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article
殷丿grd_志鹏
·
2024-01-28 14:03
算法
java
哈希算法
散列表
算法
leetcode
每日一练(20):数组中出现次数超过一半的数字
title:每日一练(20):数组中出现次数超过一半的数字categories:[
剑指
offer]tags:[每日一练]date:2022/02/16每日一练(20):数组中出现次数超过一半的数字数组中有一个数字出现的次数超过数组长度的一半
加班猿
·
2024-01-28 13:02
二叉树层序遍历(广度优先搜索)基础概念与经典题目(Leetcode题解-Python语言)
剑指
Offer32-I.从上到下打印二叉树importcollections#leetcode里面可以去
cnhwl
·
2024-01-28 11:44
二叉树
指针
列表
队列
python
剑指
offer——打印从1到最大的n位数
题目描述:输入数字n,按顺序打印出从1到最大的n位十进制数。比如输入3,则打印出1、2、3一直到最大的3位数999.1、用返回一个整数列表来代替打印2、n为正整数示例:输入:1返回值:[1,2,3,4,5,6,7,8,9]思路及解答:用Math.pow(10,n)-1取出最大的边界条件Java实现代码如下所示:importjava.util.*;publicclassSolution{public
浅亦予
·
2024-01-28 10:59
剑指offer刷题
算法
leetcode
职场和发展
数据结构
intellij-idea
开发语言
java
剑指
offer——数值的整数次方
题目描述:给定一个double类型的浮点数base和int类型的整数exponet。求base的exponet次方。保证base和exponet不同时位0。示例1:输入:2.00000,3返回值:8.00000示例2:输入:2.10000,3返回值:9.26100思路及解答:如果使用暴力解法,就是不断相乘,对于负数而言,则是相除,并且符号取反。Java代码实现如下所示:publicclassSol
浅亦予
·
2024-01-28 10:58
剑指offer刷题
算法
数据结构
java
开发语言
leetcode
职场和发展
intellij-idea
剑指
offer——删除链表的节点
题目描述:给定单向链表的头指针和一个要删除的节点的值,定义一个函数删除该节点。返回删除后的链表的头节点。数据范围:01->9示例2:输入:{2,5,1,9},1返回值:{2,5,9}说明:给定链表中值为1的第三个节点,那么在调用了你的函数之后,该链表应变为2->5->9思路及解答:如果我们要删除链表里面的一个节点,其实就是将前置节点的next直接指向当前节点的后置节点,这样在链表中再也找不到该节点
浅亦予
·
2024-01-28 10:57
剑指offer刷题
链表
算法
数据结构
leetcode
intellij-idea
开发语言
java
如果有来生
如果有来生做一只鸟飞往最美天边追逐彩虹没有迷途的苦恼只有一路高歌翱翔东方燃烧火红的希望南方筑有温暖的巢床一路朝西逐退夕阳
剑指
向北唤醒芬芳如果有来生长有一双天使的翅膀希望每次相遇都能化为你美丽的永恒真子,
笔名真子
·
2024-01-28 02:37
java数据结构与算法刷题-----LeetCode725. 分隔链表
java数据结构与算法刷题目录(
剑指
Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article
殷丿grd_志鹏
·
2024-01-27 20:53
算法
java
链表
算法
leetcode
java数据结构与算法刷题-----LeetCode24. 两两交换链表中的节点
java数据结构与算法刷题目录(
剑指
Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article
殷丿grd_志鹏
·
2024-01-27 20:52
算法
java
链表
算法
leetcode
java数据结构与算法刷题-----LeetCode19. 删除链表的倒数第 N 个结点
java数据结构与算法刷题目录(
剑指
Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article
殷丿grd_志鹏
·
2024-01-27 20:52
算法
java
链表
数据结构
leetcode
算法
java数据结构与算法刷题-----LeetCode445. 两数相加 II
java数据结构与算法刷题目录(
剑指
Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article
殷丿grd_志鹏
·
2024-01-27 20:51
算法
java
算法
leetcode
螺旋矩阵(顺时针遍历矩阵)
和
剑指
office29题相似;思路:既然是顺时针遍历一圈,那么我们就分别从上边,右边,下边,左边依次遍历,一圈完后在遍历下一圈,直到符合终止条件,停止循环,过程中将遍历到的值存入集合中,返回集合即可;大体的思路如上所示
用手写的从前
·
2024-01-27 20:14
算法
矩阵
数学建模
算法
螺旋矩阵
数据结构
矩阵螺旋遍历001
遍历
剑指
offer同一个题姐妹篇3、思路二维数组遍历,设计一个标记,记录是否遍历过了然后贪吃蛇一样搞一个蛇头,按当前方向前行,遇到边界就变向使用宏定义方式更方便阅读变向时候的边界细节处理,先遍历到边界外
answer_yym
·
2024-01-27 20:41
数组
practice
【代码随想录-数组】移除元素
推荐:kwan的首页,持续学习,不断总结,共同进步,活到老学到老导航檀越
剑指
大厂系列:全面总结java核心技术点,如集合,jvm,并发编程redis,kafka,Spring,微服务,Netty等常用开发工具系列
檀越剑指大厂
·
2024-01-27 18:08
s6
算法与数据结构
java
《
剑指
offer第二版》面试题35:复杂链表的复制(java)
题目描述题目描述:复制一个复杂链表,在复杂链表中,每个节点除了有一个next指针指向下一个节点,还有一个sibling指针指向链表中的任意节点或者null。解题思路:原始链表为:A(C)->B(E)->C(null)->D(B)->E(null)复制原始链表节点N,创建N',并将N'链接到N的后边,链表变为:A(C)->A'(null)>B(E)->B'(null)->C(null)->C'(nu
castlet
·
2024-01-27 18:38
动态规划算法详解——三大基本要素、解题步骤、算法优化和例题详解
目录1动态规划思想2适用场景3动态规划的三大基本要素4解题步骤5例题分析5.1斐波拉契数列5.1.1递归法求解5.1.2动态规划求解5.2
剑指
offer42连续子数组的最大和3.1示例1:42.接雨水1
周一写bug,bug改一周
·
2024-01-27 14:36
数据结构与算法
算法
动态规划
数据结构
java
代码随想录算法训练营第8天|字符串1 344.反转字符串 541. 反转字符串II 卡码网:54.替换数字 151.翻转字符串里的单词 卡码网:55.右旋转字符串
目录344.反转字符串知识点541.反转字符串II思路总结卡码网:54.替换数字拓展151.翻转字符串里的单词(没有很掌握思路基础语法知识卡码网:55.右旋转字符串参考之前做过的
剑指
offer的基础解法看本题文章讲解后
芋泥肉松脑袋
·
2024-01-27 13:32
算法
数据结构
java
leetcode刷题 链表相关 python
链表相关python—————
剑指
offer—————easy1)JZ6从尾到头打印链表2)JZ24反转链表3)JZ25合并两个排序的链表4)JZ52两个链表的第一个公共结点5)JZ23链表中环的入口结点
wordplay_
·
2024-01-27 11:40
leetcode
python
leetcode刷题 链表 C++ 23个(
剑指
offer 8个)
remove-duplicates-from-sorted-list82.删除排序链表中的重复元素IIremove-duplicates-from-sorted-list-ii206.反转链表:reverse-linked-list
剑指
along_0
·
2024-01-27 11:40
leetcode
刷题
C++
除自身以外数组的乘积(
力扣刷题
)(C语言)
个人博客主页:https://blog.csdn.net/2301_79293429?type=blog专栏:https://blog.csdn.net/2301_79293429/category_12545690.html给你一个整数数组nums,返回数组answer,其中answer[i]等于nums中除nums[i]之外其余各元素的乘积。题目数据保证数组nums之中任意元素的全部前缀元素和
脑子不好的小菜鸟
·
2024-01-27 11:59
刷题
leetcode
c语言
算法
【数据结构】 ——删除链表中的重复节点(不保留重复节点)
删除链表中的重复节点(不保留重复节点)(
剑指
offer上面对这个题难度是4(总共五颗星),我寻思着,是我最近进步了?
Rea0916
·
2024-01-27 06:37
数据结构
牛客力扣习题分析
链表
数据结构
第3周 第5天
力扣刷题
|树
平衡二叉树 classSolution{ public: intGetH(TreeNode*root) { if(root==nullptr) return0; intlen_left =GetH(root->left); intlen_right=GetH(root->right); if(len_left>len_right) re
Lei00764
·
2024-01-27 06:12
c++
leetcode
算法
【代码随想录-数组】二分查找
推荐:kwan的首页,持续学习,不断总结,共同进步,活到老学到老导航檀越
剑指
大厂系列:全面总结java核心技术点,如集合,jvm,并发编程redis,kafka,Spring,微服务,Netty等常用开发工具系列
檀越剑指大厂
·
2024-01-27 04:58
s6
算法与数据结构
java
【代码随想录-数组】有序数组的平方
推荐:kwan的首页,持续学习,不断总结,共同进步,活到老学到老导航檀越
剑指
大厂系列:全面总结java核心技术点,如集合,jvm,并发编程redis,kafka,Spring,微服务,Netty等常用开发工具系列
檀越剑指大厂
·
2024-01-27 03:24
s6
算法与数据结构
java
【
力扣刷题
练习】160. 相交链表
题目描述:给你两个单链表的头节点headA和headB,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回null。题目解答:classSolution{public:ListNode*getIntersectionNode(ListNode*headA,ListNode*headB){ListNode*A=headA,*B=headB;while(A!=B){A=A!=nu
NaturalHarmonia
·
2024-01-27 03:46
力扣刷题练习
链表
数据结构
【
力扣刷题
练习】103. 二叉树的锯齿形层序遍历
题目描述:给你二叉树的根节点root,返回其节点值的锯齿形层序遍历。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。题目解答:classSolution{public:vector>zigzagLevelOrder(TreeNode*root){queueq;if(root!=nullptr)q.push(root);boolflag=false;vector>ans;w
NaturalHarmonia
·
2024-01-27 03:45
力扣刷题练习
leetcode
算法
数据结构
【
力扣刷题
练习】54. 螺旋矩阵
题目描述:给你一个m行n列的矩阵matrix,请按照顺时针螺旋顺序,返回矩阵中的所有元素。题目解答:classSolution{public:vectorspiralOrder(vector>&matrix){if(matrix.empty())return{};intl=0,r=matrix[0].size()-1,t=0,b=matrix.size()-1;vectorans;while(tr
NaturalHarmonia
·
2024-01-27 03:45
力扣刷题练习
leetcode
矩阵
算法
【
力扣刷题
练习】21. 合并两个有序链表
题目描述:将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的题目解答:1.递归解法classSolution{public:ListNode*mergeTwoLists(ListNode*list1,ListNode*list2){if(list1==nullptr||list2==nullptr)returnlist1==nullptr?list2:lis
NaturalHarmonia
·
2024-01-27 03:15
力扣刷题练习
leetcode
链表
算法
【
力扣刷题
练习】236. 二叉树的最近公共祖先
题目描述:给定一个二叉树,找到该树中两个指定节点的最近公共祖先。最近公共祖先的定义为:“对于有根树T的两个节点p、q,最近公共祖先表示为一个节点x,满足x是p、q的祖先且x的深度尽可能大(一个节点也可以是它自己的祖先)。”题目解答:classSolution{public:TreeNode*lowestCommonAncestor(TreeNode*root,TreeNode*p,TreeNode
NaturalHarmonia
·
2024-01-27 03:15
力扣刷题练习
leetcode
算法
数据结构
【
力扣刷题
练习】912. 排序数组
题目描述:给你一个整数数组nums,请你将该数组升序排列题目解答:classSolution{public:vectorsortArray(vector&nums){intlen=nums.size();for(inti=len/2-1;i>=0;i--)max_heap(nums,i,len-1);for(inti=len-1;i>0;i--){swap(nums[0],nums[i]);max
NaturalHarmonia
·
2024-01-27 03:15
力扣刷题练习
算法
数据结构
leetcode
Leetcode-树的遍历
平衡二叉树q114二叉树展开为链表q124二叉树中的最大路径和q144二叉树的前序遍历q145二叉树的后序遍历q297二叉树的序列化与反序列化q543二叉树的直径q617合并二叉树q1367二叉树中的链表
剑指
jenrain
·
2024-01-27 00:24
LeetCode
leetcode
力扣题:链表的合并-10.17
力扣题-10.17[
力扣刷题
攻略]Re:从零开始的
力扣刷题
生活力扣题1:21.合并两个有序链表解题思想:合并链表就行#Definitionforsingly-linkedlist.
yu~~~
·
2024-01-27 00:50
leetcode
链表
剑指
offer ———矩阵中的路径
请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子。如果一条路径经过了矩阵中的某一个格子,则之后不能再次进入这个格子。注意:输入的路径不为空;所有出现的字符均为大写英文字母;数据范围矩阵中元素的总个数[0,900][0,900]。路径字符串的总长度[0,900][0,900]。样例ma
璀璨的秋叶
·
2024-01-26 23:52
剑指offer
c语言
c++
算法
数据结构
剑指
offer——二进制中1的个数
题目描述:输入一个整数,输出该数32位二进制中1的个数,其中负数用补码表示。示例1:输入:10返回值:2说明:十进制中10的32位二进制表示为00000000000000000000000000001010,其中有两个1。示例2:输入:-1返回值:32说明:负数使用补码表示-1的32位二进制表示为11111111111111111111111111111111,其中有32个1思路及解答:直接调用J
浅亦予
·
2024-01-26 23:22
剑指offer刷题
leetcode
算法
职场和发展
数据结构
java
开发语言
intellij-idea
剑指
offer——重建二叉树
题目描述:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。思路及解法:递归栈递归解决:在保证数据正确性的前提下,前序的第一个数值是root节点,即上图中的1,那么我们需要在中序遍历中找到1的位置,左边的就是roo
浅亦予
·
2024-01-26 23:21
剑指offer刷题
算法
数据结构
职场和发展
intellij-idea
java
leetcode
eclipse
剑指
offer——机器人的运动范围
题目描述:地上有一个m行和n列的方格。一个机器人从坐标(0,0)的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子。例如,当k为18时,机器人能够进入方格(35,37),因为3+5+3+7=18。但是,它不能进入方格(35,38),因为3+5+3+8=19。请问该机器人能够达到多少个格子?示例1:输入:5,10,10返回值:21输入:10,
浅亦予
·
2024-01-26 23:21
剑指offer刷题
链表
数据结构
leetcode
职场和发展
算法
java
开发语言
剑指
offer——剪绳子
题目描述:给你一根长度为n的绳子,请把绳子剪成整数长的m段(m、n都是整数,n>1并且m>1,mmax){max=temp;}}nums[i]=max;}returnnums[target];}}采用动态规划的方法来解题:假设绳子长度为n的最大的长度为f(n),那么如何计算f(n)?f(n)可能是n,不切分的情况下f(n)可能是f(n-1)和f(1)的乘积f(n)可能是f(n-2)和f(2)的乘积
浅亦予
·
2024-01-26 23:21
剑指offer刷题
算法
java
开发语言
数据结构
leetcode
intellij-idea
动态规划
剑指
Offer——矩阵中的路径
剑指
Offer——矩阵中的路径请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一格开始,每一步可以在矩阵中向左、右、上、下移动一格。
Ga_Lip
·
2024-01-26 23:50
数据结构与算法
剑指
offer——二维数组中的查找(从左下角开始比较)
题目:在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。解题思路:依题可知,该二维数组是一个从左到右,从上到下的一个有序数组,所以,当我们假设有一个N×N的矩阵时,左下角的值一定比它所在的行值都小,比它所在的列值都大。因此,我们将目标值target与该值进行
浅亦予
·
2024-01-26 23:50
剑指offer刷题思路拓展精讲
算法
数据结构
leetcode
visual
studio
code
学习
intellij-idea
上一页
4
5
6
7
8
9
10
11
下一页
按字母分类:
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
其他