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
》 链表第八题: 删除链表中连续重复的节点。
题目描述:在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。例如,链表1->2->3->3->4->4->5处理后为1->2->5。思路:这题的关键在于判断循环的条件,一定要捋清楚,while循环是总的一个循环,而while里的另一个while循环才是判断这个节点的值是否连续重复,如果重复,则一直将当前重复的节点指向下一个,直到下一个节点与当前节点不相
y6533
·
2024-01-04 13:59
链表
数据结构
《
剑指offer
》 字符串第一题:替换空格
题目描述:请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如:当字符串为“WeAreHappy",经过替换后为"We%20Are%20Happy"。解题思路:本题有两种思路。一种是创建一个新的并且为空的字符串来继承原字符串,一遇到空格则立马替换为%20,其他情况则继承原字符串的内容。publicStringinstead(Strings){if(s==null)returnnull;S
y6533
·
2024-01-04 13:59
算法
java
数据结构
《
剑指offer
》 链表第一题:从尾到头打印链表
//写在开头,博主是一名大专学生大一生,由于从九月份开始学习算法,但是一直处在理论学习,经老师推荐刷《
剑指offer
》,备战明年的蓝桥杯java组,写博客以此来记录学习之路,由于博主没有任何算法基础,从零开始学习
y6533
·
2024-01-04 13:29
链表
数据结构
java
《
剑指offer
》链表第三题:反转链表
此题有两种思路,一种是用三指针法,另一张是递归思想。以下是三指针法的解法:package链表;classListNode1{classNode{intval;Nodenext;Node(intval){this.val=val;}}publicNoderollback(Nodenode1){if(node1==null)returnnull;Nodeprev=null;Nodecur=node1;
y6533
·
2024-01-04 13:29
链表
数据结构
《
剑指offer
》数学第二题:求1+2+3+...+n
题目描述:求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。思路:我们可以用递归和短路运算符来进行运算,具体代码如下。代码实现:package数学;importjava.util.Scanner;publicclassMath2{publicintsolution(intn){if(n==0)return0
y6533
·
2024-01-04 13:43
算法
【面试高频算法解析】算法练习2 回溯
目录前言算法解析实战练习组合总和全排列II单词搜索前言本篇章开放目的是按算法类型学习算法,学习对应算法理论,并通过练习一些经典
算法题
深入理解这类算法,避免出现刷了很多
算法题
,还是一知半解的状态算法解析回溯
worxfr
·
2024-01-04 12:04
算法
面试
算法
职场和发展
回溯
leetcode
(双指针 子数组)剑指 Offer 48. 最长不含重复字符的子字符串
剑指Offer
48.最长不含重复字符的子字符串classSolution{public:intlengthOfLongestSubstring(strings){intcnt[300];memset(cnt
来到了没有知识的荒原
·
2024-01-04 11:23
LeetCode
算法题
4:DFS和BFS
文章目录前言深度优先搜索算法伪代码:广度优先搜索算法伪代码:一、图像渲染DFS:BFS:上面BFS算法存在的问题:修改1:修改2:二、岛屿的最大面积DFS:BFS:三、合并二叉树DFS:BFS:上面BFS算法存在的问题:修改1:修改2:四、填充每个节点的下一个右侧节点指针思路1:树的层序遍历思路2:五、01矩阵BFS:DP:六、腐烂的橘子BFS:总结前言Leetcode算法系列:https://l
消逝者
·
2024-01-04 09:46
LeetCode算法
深度优先
算法
leetcode
广度优先
剑指 Offer(第2版)面试题 68:树中两个结点的最低公共祖先
剑指Offer
(第2版)面试题68:树中两个结点的最低公共祖先
剑指Offer
(第2版)面试题68:树中两个结点的最低公共祖先解法1:递归拓展题:二叉搜索树的最近公共祖先解法1:两次遍历解法2:一次遍历
剑指
UestcXiye
·
2024-01-04 09:48
剑指
Offer
C++
剑指Offer
数据结构
算法
二叉树
递归
先序遍历
剑指 Offer(第2版)面试题 67:把字符串转换成整数
剑指Offer
(第2版)面试题67:把字符串转换成整数
剑指Offer
(第2版)面试题67:把字符串转换成整数解法1:模拟
剑指Offer
(第2版)面试题67:把字符串转换成整数题目来源:87.把字符串转换成整数解法
UestcXiye
·
2024-01-04 09:17
剑指
Offer
C++
剑指Offer
数据结构与算法
字符串
LeetCode
算法题
-Set Mismatch(Java实现)
这是悦乐书的第279次更新,第295篇原创01看题和准备今天介绍的是LeetCode
算法题
中Easy级别的第147题(顺位题号是645)。集合S最初包含从1到n的数字。
程序员小川
·
2024-01-04 09:11
每日一道
算法题
day-one(备战蓝桥杯)
从今天开始博主会每天做一道
算法题
备战蓝桥杯,并分享博主做题的思路,有兴趣就加入我把!
算法题
目:有一个长度为N的字符串S,其中的每个字符要么是B,要么是E。
贰月磐石
·
2024-01-04 08:15
算法
c++
数据结构
蓝桥杯
c语言
【LeetCode-
剑指offer
】-- 13.二维区域和检索-矩阵不可变
13.二维区域和检索-矩阵不可变方法:一维前缀和初始化时对矩阵的每一行计算前缀和,检索时对二维区域中的每一行计算子数组和,然后对每一行的子数组和计算总和。具体实现方面,创建m行n+1列的二维数组sums,其中m和n分别是矩阵matrix的行数和列数,sums[i]为matrix[i]的前缀和数组。将sums的列数设为n+1的目的是为了方便计算每一行的子数组和,不需要对col1=0的情况特殊处理。c
小d<>
·
2024-01-04 07:18
#
剑指offer
leetcode
算法
【LeetCode】修炼之路-0001-Two Sum(两数之和)【python】【简单】
当前网络上有非常多优秀的前辈分享了LeetCode的最佳
算法题
解,这对于我们这些初学者来说提供了莫大的帮助,但对于我这种缺乏编程直觉的学习者而言,这往往难以消化吸收。
Mark White
·
2024-01-04 05:58
【LeetCode】修炼之路
leetcode
python
算法
Leetcode-递归
文章目录q21合并两个有序链表q101对称二叉树q104二叉树的最大深度q226翻转二叉树q236二叉树的最近公共祖先
剑指Offer
10-I.斐波那契数列
剑指Offer
10-II.青蛙跳台阶问题q21合并两个有序链表题目传送门题解可以使用递归和迭代两种方法进行求解
jenrain
·
2024-01-04 05:39
LeetCode
leetcode
leetcode
算法题
之递归--二叉树中的深搜总结
递归的本质是找重复的子问题文章目录1.计算布尔二叉树的值2.从根节点到叶节点数字之和3.二叉树剪枝4.验证二叉搜索树5.二叉搜索树中第K小的元素6.二叉树的所有路径1.计算布尔二叉树的值计算布尔二叉树的值classSolution{public:boolevaluateTree(TreeNode*root){if(root->left==nullptr)returnroot->val==0?fal
@A云淡风轻
·
2024-01-04 05:38
算法
算法
leetcode
职场和发展
leetcode递归
算法题
总结
递归本质是找重复的子问题本章目录1.汉诺塔2.合并两个有序链表3.反转链表4.两两交换链表中的节点5.Pow(x,n)1.汉诺塔汉诺塔//面试写法classSolution{public:voidhanota(vector&a,vector&b,vector&c){dfs(a,b,c,a.size());}voiddfs(vector&a,vector&b,vector&c,intn){if(n=
@A云淡风轻
·
2024-01-04 05:08
算法
算法
leetcode
深度优先
前端中级
算法题
前端中级
算法题
反转字符串编写一个函数,接受一个字符串作为输入,并返回反转后的字符串。
qq_42431718
·
2024-01-04 04:31
前端
算法
前端中级
算法题
前端中级
算法题
数组去重编写一个函数,接受一个数组作为输入,并返回一个去重后的新数组。
qq_42431718
·
2024-01-04 04:31
算法
LeetCode
算法题
-Min Stack(Java实现)
这是悦乐书的第177次更新,第179篇原创01看题和准备今天介绍的是LeetCode
算法题
中Easy级别的第36题(顺位题号是155)。
程序员小川
·
2024-01-04 02:47
python数据结构
剑指offer
-重建二叉树
例题描述给定节点数为n的二叉树的前序遍历和中序遍历结果,请重建出该二叉树并返回它的头结点。例如输入前序遍历序列{1,2,4,5,3,6,7}和中序遍历序列{4,2,5,1,6,3,7},则重建出如下图所示。解决思路因为先序遍历根中序遍历是保存在数组中的,所以我们需要利用数组的性质,而不是上来就利用二叉树的性质,刚开始我是按照二叉树来做的,直到我失败了无数次之后,看到了函数的传入值是两个list,我
漫漫行程路
·
2024-01-04 01:01
python数据结构
数据结构
python
算法
java数据结构与算法刷题-----LeetCode746. 使用最小花费爬楼梯
java数据结构与算法刷题目录(
剑指Offer
、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article
殷丿grd_志鹏
·
2024-01-03 22:05
算法
java
算法
leetcode
java数据结构与算法刷题-----LeetCode70. 爬楼梯
java数据结构与算法刷题目录(
剑指Offer
、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article
殷丿grd_志鹏
·
2024-01-03 22:35
算法
java
leetcode
算法
java数据结构与算法刷题-----LeetCode509. 斐波那契数
java数据结构与算法刷题目录(
剑指Offer
、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article
殷丿grd_志鹏
·
2024-01-03 22:02
算法
java
leetcode
算法
每日力扣
算法题
(简单篇)
459.重复的字符串原题:给定一个非空的字符串s,检查是否可以通过由它的一个子串重复多次构成。解题思路:最简单的思路就是枚举,设定一个变量i,由于一个重复的字符串肯定是由一个子字符串复制一遍而来,因此我们只需要遍历一般就行了,然后当我们发现i是长度Len的因数时,我们就可以去判断这个字符串是否是重复的字符串,而比较时我们需要另一个变量k以i这个位置为基准去比较其他位置的字符串是否与i所在的位置往后
hadagaga
·
2024-01-03 20:57
力扣简单篇
算法
leetcode
职场和发展
每日力扣
算法题
(简单篇)
506.相对名词原题:给你一个长度为n的整数数组score,其中score[i]是第i位运动员在比赛中的得分。所有得分都互不相同。运动员将根据得分决定名次,其中名次第1的运动员得分最高,名次第2的运动员得分第2高,依此类推。运动员的名次决定了他们的获奖情况:名次第1的运动员获金牌"GoldMedal"。名次第2的运动员获银牌"SilverMedal"。名次第3的运动员获铜牌"BronzeMedal
hadagaga
·
2024-01-03 20:57
力扣简单篇
算法
leetcode
职场和发展
每日力扣
算法题
(简单篇)
461.汉明距离原题:两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目。给你两个整数x和y,计算并返回它们之间的汉明距离。解题思路:我们注意到,这里需要比较的是二进制位上数字不同的数目,那么只需要同时与1比较,就可以确定是否相同知识储备:位运算符&:效果比较数字二进制位第最后一位例:1&1=1,0&0=0,0&1=0位运算符>>:使数字的二进制位向右移位例:2>>1=1,效果:1
hadagaga
·
2024-01-03 20:27
力扣简单篇
算法
leetcode
职场和发展
每日力扣
算法题
(简单篇)
415.字符串相加原题:给定两个字符串形式的非负整数num1和num2,计算它们的和并同样以字符串形式返回。你不能使用任何內建的用于处理大整数的库(比如BigInteger),也不能直接将输入的字符串转换为整数形式。解题思路:字符串相加,这里不能转换成正整数再相加,会溢出,那么我们就只能直接相加了,模拟一下平时做加法的过程,先加上两个数字,如果大于十就进一位,重复这样的步骤,那么我们就需要一个数字
hadagaga
·
2024-01-03 20:26
力扣简单篇
算法
leetcode
数据结构
每日力扣
算法题
(简单篇)
412.FizzBuzz原题:给你一个整数n,找出从1到n各个整数的FizzBuzz表示,并用字符串数组answer(下标从1开始)返回结果,其中:answer[i]=="FizzBuzz"如果i同时是3和5的倍数。answer[i]=="Fizz"如果i是3的倍数。answer[i]=="Buzz"如果i是5的倍数。answer[i]==i(以字符串形式)如果上述条件全不满足解题思路:读题可发现
hadagaga
·
2024-01-03 20:26
力扣简单篇
算法
leetcode
职场和发展
每日力扣
算法题
(简单篇)
290.单词规律原题:给定一种规律pattern和一个字符串s,判断s是否遵循相同的规律。这里的遵循指完全匹配,例如,pattern里的每个字母和字符串s中的每个非空单词之间存在着双向连接的对应规律。运行时间:解题思路:经典哈希表解法,采用映射的方法来判断,因为pattern字符数组中仅有小写字母,因此可以采用一个可以存放26个字符指针的哈希表来存放已建立映射关系的小写字母和单词,比方说a对应do
hadagaga
·
2024-01-03 20:56
力扣简单篇
leetcode
算法
职场和发展
每日力扣
算法题
(简单篇)
404.左叶子之和原题:给定二叉树的根节点root,返回所有左叶子之和。解题思路:二叉树类题目,显然最简单的解法就是递归,这里要求求左叶子之和,那么叶子的定义就是没有子节点的节点,也就是left==NULL&&right==NULL,那么我们可以很简单的写出判断的条件,而对于特殊情况也就是root==NULL的情况做特殊处理就行了知识储备:递归:把大问题分解为小问题,以本题为例,对每一个子节点单独
hadagaga
·
2024-01-03 20:56
力扣简单篇
算法
leetcode
职场和发展
每日力扣
算法题
(简单篇)
409.最长回文串原题:给定一个包含大写字母和小写字母的字符串s,返回通过这些字母构造成的最长的回文串。在构造过程中,请注意区分大小写。比如"Aa"不能当做一个回文字符串。解题思路:这题字符串中只有大写和小写字母,元素有限,所以可以用哈希表,再看回文子串,回文子串的特征有两个,分为奇数长度和偶数长度,那么我们先数一数字符串的每一个字母都有多少个,然后开始取字符串,先把偶数个的字母取出来,同时取出多
hadagaga
·
2024-01-03 20:56
力扣简单篇
算法
leetcode
职场和发展
每日力扣
算法题
(简单篇)
504.七进制数原题:给定一个整数num,将其转化为7进制,并以字符串形式输出。解题思路:对于n进制题,我们都可以采用除n取余法来解决源代码:char*convertToBase7(intnum){char*ans=malloc(sizeof(char)*20);intbase=19,flag=1;ans[base--]='\0';if(num=7){num/=7;ans[base--]=num%
hadagaga
·
2024-01-03 20:24
力扣简单篇
算法
leetcode
职场和发展
数据结构
算法题
(考研)
1、利用结点右孩子指针将一棵二叉树的叶子结点按照从左往右的顺序串成一个单链表(head初值为NULL,定义两个指针head和tail分别指向第一个叶子结点和最后一个叶子结点)?voidlink(BTNode*p,BTNode*&head,BTNode*&tail){if(p!=NULL){if(p-lchild==NULL&&p->rchild==NULL){if(head==NULL)//hea
小哼快跑
·
2024-01-03 19:09
数据结构
数据结构
算法
链表
【LeetCode-
剑指offer
】--16.无重复字符的最长子串
16.无重复字符的最长子串方法:滑动窗口classSolution{publicintlengthOfLongestSubstring(Strings){intn=s.length();Setset=newHashSet<>();intl=0,ans=0;for(inti=0;i
小d<>
·
2024-01-03 18:36
#
剑指offer
leetcode
算法
【LeetCode-
剑指offer
】--15.找到字符串中所有字母异位词
15.找到字符串中所有字母异位词方法:滑动窗口classSolution{publicListfindAnagrams(Strings,Stringp){Listans=newArrayListm){returnans;}int[]cnt1=newint[26];int[]cnt2=newint[26];for(inti=0;i
小d<>
·
2024-01-03 18:06
#
剑指offer
leetcode
算法
【LeetCode-
剑指offer
】-- 14.字符串的排列
14.字符串的排列方法:滑动窗口classSolution{publicbooleancheckInclusion(Strings1,Strings2){intm=s1.length(),n=s2.length();if(m>n){returnfalse;}int[]cnt1=newint[26];int[]cnt2=newint[26];for(inti=0;i
小d<>
·
2024-01-03 18:05
#
剑指offer
leetcode
算法
【LeetCode-
剑指offer
】-- 9.乘积小于K的子数组
9.乘积小于K的子数组方法:滑动窗口关于为什么子数组数目为j-1+1。这时候就要理解采用滑动窗口的思路其实是枚举子数组的右端点,然后来找到满足条件的最小左端点。也即当得到满足条件的窗口时,就意味着得到了以j作为右端点时满足条件的左端点的最小值。那么此时满足条件的子数组个数当然就等于窗口能所有能作为左端点的位置个数,即j-i+1。classSolution{publicintnumSubarrayP
小d<>
·
2024-01-03 18:31
#
剑指offer
leetcode
算法
leetcode
算法题
--盛最多水的容器
原题链接:https://leetcode-cn.com/problems/container-with-most-water/双指针classSolution{public:intmaxArea(vector&height){intn=height.size();intres=0;intl=0,r=n-1;while(l
bob62856
·
2024-01-03 17:01
Algorithm
leetcode
算法
容器
倒数第二个周五
以及现在每天一道的简单
算法题
,和充满着莫名标签无处安放的H5。这么多天,已然习惯这里的节
姜浩_19强化班
·
2024-01-03 16:09
剑指Offer
- 14 - 链表中倒数第k个结点
题目描述链表中倒数第k个结点输入一个链表,输出该链表中倒数第k个结点。思路准备两个指针,第一个指向头,让第二个先往后走k步,之后再同时走,当第二个指针到达尾部时第一个指针指向的刚好就是倒数第k个节点CodePython#-*-coding:utf-8-*-#classListNode:#def__init__(self,x):#self.val=x#self.next=NoneclassSolut
vouv
·
2024-01-03 12:19
【算法】利用分治思想解
算法题
:快排、归并、快速选择实战(C++)
1.分治思想介绍分治法将问题划分成多个相互独立且相同或类似的子问题,然后递归地解决每个子问题,并将结果合并以得到原始问题的解。分治思想通常包含以下三个步骤:分解:将原始问题划分成多个规模较小、相互独立且类似的子问题。这个步骤可以通过递归方法实现。解决:递归地解决每个子问题。当子问题足够小而可以直接求解时,使用简单的方法解决。合并:将各个子问题的解合并,得到原始问题的解。核心思想是将一个复杂的问题分
卜及中
·
2024-01-03 11:01
算法
算法
c++
数据结构
【算法】一维、二维前缀和 解决
算法题
(C++)
文章目录1.前缀和算法介绍2.一维前缀和模板引入DP34【模板】前缀和3.利用一维前缀和解题724.寻找数组的中心下标238.除自身以外数组的乘积560.和为K的子数组974.和可被K整除的子数组525.连续数组二维前缀和模板1314.矩阵区域和1.前缀和算法介绍前缀和算法用于高效地计算数组或序列中某个区间内元素的和。前缀和数组是一个辅助数组,其每个元素存储原始数组从开头到当前位置的元素和。通过提
卜及中
·
2024-01-03 11:29
算法
算法
c++
数据结构
数据结构OJ实验5-串应用
A.DS串应用--KMP
算法题
目描述学习KMP算法,给出主串和模式串,求模式串在主串的位置输入第一个输入t,表示有t个实例第二行输入第1个实例的主串,第三行输入第1个实例的模式串以此类推输出第一行输出第
gyeolhada
·
2024-01-03 10:24
C++学习
OJ
算法学习
数据结构
算法
c++
【
算法题
】33. 搜索旋转排序数组
题目整数数组nums按升序排列,数组中的值互不相同。在传递给函数之前,nums在预先未知的某个下标k(0<=k
YifengGuo233
·
2024-01-03 10:21
LeetCode练习手册
算法
数据结构
java
【
算法题
】34. 在排序数组中查找元素的第一个和最后一个位置
题目给你一个按照非递减顺序排列的整数数组nums,和一个目标值target。请你找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值target,返回[-1,-1]。你必须设计并实现时间复杂度为O(logn)的算法解决此问题。示例1:输入:nums=[5,7,7,8,8,10],target=8输出:[3,4]示例2:输入:nums=[5,7,7,8,8,10],target=6输出
YifengGuo233
·
2024-01-03 10:21
LeetCode练习手册
算法
数据结构
leetcode
leetcode
算法题
第32题:最长有效括号
leetcode
算法题
第32题:最长有效括号题目:给你一个只包含'('和')'的字符串,找出最长有效(格式正确且连续)括号子串的长度。
foolS22
·
2024-01-03 08:01
leetcode刷题之旅
leetcode
算法
职场和发展
LeetCode 练习——关于查找数组元素之和的两道题
1.数组中和为0的三个数1.1题目描述
剑指Offer
II006.排序数组中两个数字之和给定一个已按照升序排列的整数数组numbers,请你从数组中找出两个数满足相加之和等于目标数target。
SK_Jaco
·
2024-01-03 02:37
LeetCode刷题--- 第 N 个泰波那契数
个人主页:元清加油_【C++】,【C语言】,【数据结构与算法】-CSDN博客个人专栏力扣递归
算法题
http://t.csdnimg.cn/yUl2I【C++】http://t.csdnimg.cn/6AbpV
元清加油
·
2024-01-03 01:06
力扣动态规划算法题
leetcode
算法
2022-01-12
IT工业界1.力扣:反转链表2022-01-12(
剑指Offer
24.反转链表)英语1.墨墨背单词:复习50个单词
幸福大黑鸭
·
2024-01-02 21:42
上一页
16
17
18
19
20
21
22
23
下一页
按字母分类:
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
其他