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
剑指offer32
《
剑指
Offer》 面试题29 顺时针打印矩阵
题目描述输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下4X4矩阵:12345678910111213141516则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10.思路这道题乍一看很像初学C语言时做的蛇形数组问题,但比那个难度还是有所提高的,主要思路就是先考虑数组的形态,特殊边界的判定,特殊矩阵的考虑等。书上写的思路我觉得
萨缪
·
2023-04-12 15:06
剑指
offer:面试题59 - II. 队列的最大值(单调队列)
面试题59-II.队列的最大值请定义一个队列并实现函数max_value得到队列里的最大值,要求函数max_value、push_back和pop_front的均摊时间复杂度都是O(1)。若队列为空,pop_front和max_value需要返回-1示例1:输入:[“MaxQueue”,“push_back”,“push_back”,“max_value”,“pop_front”,“max_val
huangyitai
·
2023-04-12 14:42
线性表
剑指offer
排序算法
剑指
Offer 60. n个骰子的点数
剑指
Offer60.n个骰子的点数难度:middle\color{orange}{middle}middle题目描述把n个骰子扔在地上,所有骰子朝上一面的点数之和为s。
芜湖男童
·
2023-04-12 14:08
剑指
Offer(第
2
版)
链表
数据结构
LeetCode-(
剑指
offer-stack)面试题59 - II. 队列的最大值
请定义一个队列并实现函数max_value得到队列里的最大值,要求函数max_value、push_back和pop_front的均摊时间复杂度都是O(1)。若队列为空,pop_front和max_value需要返回-1示例1:输入:["MaxQueue","push_back","push_back","max_value","pop_front","max_value"][[],[1],[2]
修行者_Yang
·
2023-04-12 14:07
LeetCode
剑指
Offer 49. 丑数
剑指
Offer49.丑数难度:middle\color{orange}{middle}middle题目描述我们把只包含质因子2、3和5的数称作丑数(UglyNumber)。
芜湖男童
·
2023-04-12 14:07
剑指
Offer(第
2
版)
算法
leetcode
数据结构
【leetcode 设计题 C++】
剑指
Offer 59 - II. 队列的最大值
剑指
Offer59-II.队列的最大值classMaxQueue{public:queueQ;dequemaxQ;MaxQueue(){}intmax_value(){returnmaxQ.empty(
笨比master
·
2023-04-12 14:06
leetcode
剑指offer
算法
stack
面试
剑指
offer面试题59 - II. 队列的最大值
题意求队列的最大值方法单调队列代码classMaxQueue{public:intq[100010]={0};ints[100010]={0};intk,t,l,r;MaxQueue(){k=-1;t=0;r=-1;l=0;}intmax_value(){if(kq[s[r]])r--;s[++r]=k;}intpop_front(){if(kmax_value();*obj->push_back
unshakable_
·
2023-04-12 14:03
算法
数据结构
剑指
Offer II 095. 最长公共子序列(中等 动态规划 字符串)
剑指
OfferII095.最长公共子序列给定两个字符串text1和text2,返回这两个字符串的最长公共子序列的长度。如果不存在公共子序列,返回0。
风雨中de宁静
·
2023-04-12 14:37
动态规划
算法
leetcode
剑指
Offer II 095. 最长公共子序列-动态规划
剑指
OfferII095.最长公共子序列给定两个字符串text1和text2,返回这两个字符串的最长公共子序列的长度。如果不存在公共子序列,返回0。
zzu菜
·
2023-04-12 14:36
LeetCode
动态规划
leetcode
算法
剑指
Offer II 095. 最长公共子序列
题目链接力扣题目描述给定两个字符串text1和text2,返回这两个字符串的最长公共子序列的长度。如果不存在公共子序列,返回0。一个字符串的子序列是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。例如,"ace"是"abcde"的子序列,但"aec"不是"abcde"的子序列。两个字符串的公共子序列是这两个字符串所共同拥有的子
qbnmm
·
2023-04-12 14:33
刷题笔记
算法
leetcode
力扣
剑指
Offer II 095. 最长公共子序列
力扣[
剑指
OfferII095.最长公共子序列]题目:思路:动态规划,定义一个大小为m,nm,nm,n的二维数组定义dpijdp_{ij}dpij为s1s1s1字符串前iii个字符与s2s2s2字符串前
Guohy.
·
2023-04-12 13:59
leetcode
动态规划
算法
【
剑指
Offer II 095】最长公共子序列
文章目录题目描述解题思路方法一:递归方法二:备忘录方法(递归+备忘录+自顶向下)方法三:动态规划(循环+备忘录+自底向上)题目描述给定两个字符串text1和text2,返回这两个字符串的最长公共子序列的长度。如果不存在公共子序列,返回0。一个字符串的子序列是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。例如,“ace”是“a
Gavynlee
·
2023-04-12 13:27
leetcode
leetcode
算法
动态规划
递归
剑指
Offer II 024. 反转链表(经典题型)
时间是伟大的作者,她能写出未来的结局。——卓别林目录题目描述:方法1:迭代法(翻指针)方法2:头插法方法3:递归法题目描述:给定单链表的头节点head,请反转链表,并返回反转后的链表的头节点。示例1:输入:head=[1,2,3,4,5]输出:[5,4,3,2,1]示例2:输入:head=[1,2]输出:[2,1]示例3:输入:head=[]输出:[]方法1:迭代法(翻指针)迭代法也称辗转法,是一
是小陳同学呀
·
2023-04-12 13:18
链表
数据结构
leetcode
算法
剑指
offer全题解思路汇总
剑指
Offer69题思路汇总面试题1:赋值运算符重载:该题主要考察拷贝构造,构造析构,重载操作符。在面试者使用c++等语言时进行考察。
清羽_ls
·
2023-04-12 11:28
数据结构与算法
算法
offer
剑指
Offer-36 二叉树深度(广度遍历)
输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。难度:易计算二叉树深度的问题是基于二叉树的广度优先遍历,以下是递归和非递归写法。递归写法publicintTreeDepth(TreeNoderoot){if(root==null)return0;//递归出口//树的高度=左子树和右子树中高的那个加1returnMath.max
北国雪WRG
·
2023-04-12 09:43
惟楚有材(8)——屈原的故事
楚国在经历了吴起向旧贵族进行的大刀阔斧变法改革失败后,屈原再一次挥
剑指
向强大的保守的贵族势力,在楚怀王的支持下进行了力挽狂澜的改革,结果依然是以失败告终,被保守势力逐出楚郢都,流放发配外地。
楚子
·
2023-04-12 09:20
代码随想录第七天(541、
剑指
05)
文章目录541.反转字符串II发现了三个基础知识的问题看答案改进
剑指
Offer05.替换空格答案方法1答案方法2知识点一、二、三、总结541.反转字符串II发现了三个基础知识的问题第一个这个题目发现了一个非常大的问题
m0_50538723
·
2023-04-12 05:42
leetcode
算法
数据结构
leetcode
【
剑指
Offer】(1)
二维数组中的查找:fire:思路:dog:代码三、替换空格:fire:思路:dog:代码四、从尾到头打印链表:fire:思路:dog:代码:dog:代码五、重建二叉树:fire:思路:dog:代码总结前言
剑指
人间凡尔赛
·
2023-04-12 05:06
面试算法练习
每日一练
算法
数据结构
leetcode
剑指
offer练习日志01--数组小练习
目录一.
剑指
Offer03.数组中重复的数字(原地哈希思想)问题描述:问题分析:原地哈希思想排序:题解算法gif:算法接口:二.二维数组中的查找(行列交叉二分法)问题描述:方法一:对角元素比较搜索法算法思想
摆烂小青菜
·
2023-04-12 04:02
剑指offer练习日志
数据结构
算法
合并两个排序的链表
这到题目在leetcode和
剑指
offer上均出现了,属于easy的题目,但是其中对链表的操作经常会让人搞错。
囧略囧
·
2023-04-12 04:34
【科学刷题】动态规划
DP)股票难题718.最长重复子数组516.最长回文子序列97.交错字符串416.分割等和子集312.戳气球72.编辑距离322.零钱兑换10.正则表达式匹配198.打家劫舍解码方法/把数字翻译成字符串
剑指
数学工具构造器
·
2023-04-12 03:19
科学刷题
动态规划
算法
剑指
offer:重建二叉树(C++)
题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。思路:重建出图2.6所示的二叉树并输出它的头结点。前序遍历序列的第一个元素为根结点的值,然后在中序遍历序列中寻找根节点的值的位置(索引)。从中序遍历序列的起
加奔
·
2023-04-12 02:09
剑指offer
剑指
offer:平衡二叉树(C++)
题目描述输入一棵二叉树,判断该二叉树是否是平衡二叉树。思路:平衡二叉树是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。因此,计算出每个结点的左子树与右子树的深度即可判断。平衡因子:某结点的左子树与右子树的高度(深度)差即为该结点的平衡因子(BF,BalanceFactor)。平衡二叉树上所有结点的平衡因子只可能是-1,0或1。如果某一结点的平衡因子绝对值大
加奔
·
2023-04-12 02:39
剑指offer
异化的终点:人的失踪——读卡夫卡《失踪者》(又译:美国)
那座高耸的塑像,他已经观察了很久,她的那只握
剑指
天的手臂,犹如刚刚才抬起一般,而她的全身都沐浴着自由之风。《失踪者》是卡夫卡的第一部长篇小说,原书未完成。
尼采教我超人
·
2023-04-12 02:51
(C++)(多解法)
剑指
offer:二叉树的镜像
递归写法1原地修改。swap替换那三句也是阔以滴。classSolution{public:TreeNode*mirrorTree(TreeNode*root){if(!root)returnNULL;TreeNode*temp=root->left;root->left=root->right;root->right=temp;if(root->left)mirrorTree(root->lef
李子鱼
·
2023-04-12 02:06
刷题
二叉树
队列
stack
剑指
offer:平衡二叉树
题目描述:输入一棵二叉树,判断该二叉树是否是平衡二叉树。structTreeNode{intval;structTreeNode*left;structTreeNode*right;TreeNode(intx):val(x),left(NULL),right(NULL){}}boolIsBalanced_Solution(TreeNode*pRoot){}解题思路:对于一个树,判断它是不是平衡二叉
崔楠
·
2023-04-12 02:36
剑指offer
C++
剑指
offer:重建二叉树的C++实现
structTreeNode{intval;TreeNode*left;TreeNode*right;TreeNode(intx):val(x),left(NULL),right(NULL){}};TreeNode*built(vector&preorder,vector&inorder){if(preorder.size()==0||inorder.size()==0||preorder.siz
半梦半醒间幸运_
·
2023-04-12 02:36
c++算法代码
剑指
offer:重建二叉树
importjava.util.Arrays;/*输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。*//*************关于先序遍历和中序遍历*先、中都是对于根节点来说的左孩子右孩子的顺序是不变的*使用
JYZzz.
·
2023-04-12 02:36
剑指offer
JAVA
重建二叉树
先序遍历
中序遍历
剑指
offer:27二叉树的镜像
请完成一个函数,输入一个二叉树,该函数输出它的镜像。例如输入:4/\27/\/\1369镜像输出:4/\72/\/\9631示例1:输入:root=[4,2,7,1,3,6,9]输出:[4,7,2,9,6,3,1]限制:0s;s.push(root);while(!s.empty()){TreeNode*node=s.top();s.pop();if(node->left!=nullptr||no
For L9L
·
2023-04-12 02:05
剑指offer刷题
算法
数据结构
c++
剑指
offer 07:重建二叉树
思路:1,首先这题是针对二叉树元素不重复的情况进行解决,那么就比较容易找到中序遍历中的根节点位置2,提供二叉树的前序和中序遍历,就能够确定根结点,以及左右子树长度3,首先,根节点就是前序遍历的第一个元素,然后再中序中搜索该元素,确定中序遍历中根结点位置;确定中序遍历中根节点位置后,依据根节点序号-该子树最左端序号就能得到左子树长度(右子树就是该子树最右端序号-根结点序号)4,题目要求构建树,因此要
Lance Jay
·
2023-04-12 02:04
Leetcode刷题
c++
【
剑指
Offer 07】重建二叉树 c++
题目描述:输入某二叉树的前序遍历和中序遍历的结果,请构建该二叉树并返回其根节点。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。示例1:Input:preorder=[3,9,20,15,7],inorder=[9,3,15,20,7]Output:[3,9,20,null,null,15,7]示例2:Input:preorder=[-1],inorder=[-1]Output:[-1]限制
minus haha
·
2023-04-12 02:33
c++
算法
二叉树
递归
构造二叉树
剑指
Offer:二叉树的下一个结点Java/Python
1.题目描述给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。2.算法描述3种情况:3种情况:3种情况:1.当前结点存在右子树,那么中序遍历中当前结点的下一个结点是其右子树中最左端的结点。1.当前结点存在右子树,\red{那么中序遍历中当前结点的下一个结点是其右子树中最左端的结点}。1.当前结点存在右子树,那么中序
梦成已白发
·
2023-04-12 02:03
剑指Offer
剑指
offer-重建二叉树C++实现
剑指
offer-重建二叉树C++实现原题链接#include#include#includeusingnamespacestd;structTreeNode{intval;structTreeNode*
阿吉的CV之路
·
2023-04-12 02:01
leetcode刷题总结
c++
leetcode
剑指offer
剑指
Offer:求二叉树的深度
题目描述输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。解题思路:这道题蛮简单的,求二叉树的深度。可以是递归的方法,属于DFS(深度优先搜索)C++代码如下:/*structTreeNode{intval;structTreeNode*left;structTreeNode*right;TreeNode(intx):val(x
Mr.Jk.Zhang
·
2023-04-12 02:29
LeetCode
牛客网刷题
算法
二叉树
数据结构
面试
dfs
剑指
offer:把二叉树打印成多行
题目描述从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。解题思路:二叉树层次遍历,利用一个队列,每层之间用一个NULL分割开,当遇到NULL则代表当前层已遍历完ACC++Solution:classSolution{public:vector>Print(TreeNode*pRoot){vector>res;if(!pRoot)returnres;queueq;q.push(pRo
amoscykl
·
2023-04-12 02:28
剑指offer
剑指offer
剑指offer
剑指
offer:平衡二叉树
题目描述输入一棵二叉树,判断该二叉树是否是平衡二叉树。ACC++Solution:递归判断左右子树的高度差并记录高度返回给父节点classSolution{public:intdfs(TreeNode*pRoot){if(pRoot==NULL)return0;intleftheight=dfs(pRoot->left);if(leftheight==-1)return-1;intrighthei
amoscykl
·
2023-04-12 02:58
剑指offer
剑指offer
剑指offer
《
剑指
0ffer》:栈与队列经典题目分析
1.实现一个栈,要求实现Push(出栈)、Pop(入栈)、Min(返回最小值)的时间复杂度为O(1)主要思路:1)建立两个栈_data与_mindata,其中_data作为数据栈,存放每一个入栈的数据;_mindata作为数据最小栈,存放数据栈中当前最小的数据;2)当元素data入栈时,将data入栈到_data数据栈中,并让data与_data的栈顶元素做比较,如果x小于等于_data的栈顶元素
Kobe51920
·
2023-04-12 02:24
剑指offer
《
剑指
offer》:线性表经典题目分析
1、逆置单链表typedefstructLinkNode{intval;LinkNode*next;};//单链表逆置voidReverse(ListNode*pHead){if(pHead==NULL||pHead->next==NULL){return;}LinkNode*Recv=NULL;//p指针指向头结点LinkNOde*pCur=head;while(p!=NULL){ListNod
Kobe51920
·
2023-04-12 02:24
剑指offer
剑指
Offer: 重建二叉树
剑指
Offer:重建二叉树题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。
Erice_s
·
2023-04-12 02:24
Algorithm
二叉树
剑指
offer:关于二叉树的汇总(c++)
1、重建二叉树:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。2、树的子结构:输入两棵二叉树A和B,判断B是不是A的子结构。如图:A中有一部分子树的结构和B是一样的,因此B是A的子结构#includeusing
Kobe51920
·
2023-04-12 02:22
剑指offer
c++
算法
数据结构
2021-12-08每日刷题打卡
2021-12-08每日刷题打卡力扣——
剑指
offer
剑指
Offer12.矩阵中的路径给定一个mxn二维字符网格board和一个字符串单词word。
你好_Ä
·
2023-04-12 01:28
深度优先
leetcode
算法
剑指offer
<
剑指
Offer>面试题10(2):青蛙跳台阶问题
题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)题目解读
剑指
Offer77青蛙跳台阶问题代码思路一循环实现classSolution
cb_guo
·
2023-04-12 01:10
labuladong算法小结
虽然市面上讲算法的书不少,主流的算法4,数据结构与算法分析,还有针对面试的
剑指
offer,啊哈算法,图解算法,左程云算法指南,还有网上的一些数据结构和算法视频,比如浙大数据结构课程等。
coder 明轩
·
2023-04-12 00:12
编程学习笔记
面试刷题
算法
刷题笔记【4】| 快速刷完67道
剑指
offer(Java版)
本文已收录于专栏《刷题笔记》文章目录前言1、数值的整数次方题目描述思路一(直接运算)思路二(快速幂递归版)思路三(快速幂非递归版)2、调整数组顺序使奇数位于偶数前面题目描述思路一(暴力)思路二3、链表中倒数第k个结点题目描述思路(快慢指针)4、反转链表题目描述思路(栈)前言hi~,我是刹那芳间,本专栏题目来源参考阿秀学长的刷题笔记,小戴只是把C++的题解改成了Java版本,并整理了其他思路,便于自
刹那芳间-
·
2023-04-12 00:48
刷题笔记
java
leetcode
算法
刷题笔记【3】| 快速刷完67道
剑指
offer(Java版)
本文已收录于专栏《刷题笔记》文章目录前言1、斐波那契数列题目描述思路一(递归)思路二(循环)2、跳台阶题目描述思路一(递归)思路二(循环)3、跳台阶扩展问题题目描述思路4、矩形覆盖题目描述思路一(递归)思路二(循环)5、二进制中1的个数题目描述思路一(循环按位比较法)思路二(位运算优化法)前言hi~,我是刹那芳间,本专栏题目来源参考阿秀学长的刷题笔记,小戴只是把C++的题解改成了Java版本,并整
刹那芳间-
·
2023-04-12 00:18
java
leetcode
算法
leetcode
剑指
Offer 16. 数值的整数次方
题目描述解题思路执行结果leetcode.题目描述实现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.0>1直
dengjiayue
·
2023-04-12 00:08
后端
刷题笔记【5】| 快速刷完67道
剑指
offer(Java版)
本文已收录于专栏《刷题笔记》文章目录前言1、合并两个有序链表题目描述思路一(递归)思路二(双指针)2、树的子结构题目描述思路一(递归)3、二叉树的镜像题目描述思路一(递归)4、顺时针打印矩阵题目描述思路一(边界模拟法)前言题目来源参考阿秀学长的刷题笔记,小戴只是把C++的题解改成了Java版本,并整理了其他思路,便于自己的学习~如果解题有更好的方法,本文也会及时进行更新~希望对你有帮助~一起加油哇
刹那芳间-
·
2023-04-12 00:05
刷题笔记
java
链表
数据结构
leetcode
剑指
Offer 15. 二进制中1的个数
题目描述解题思路执行结果leetcode
剑指
Offer15.二进制中1的个数.题目描述编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为'1'的个数(也被称为汉明重量
dengjiayue
·
2023-04-12 00:03
后端
【牛客刷题专栏】0x17:JZ17打印从1到最大的n位数(C语言编程题)
题目来自:牛客/题库/在线编程/
剑指
offer:目录前言问题描述:举例:解法思路:代码结果:结束语问题描述:输入数字n,按顺序打印出从1到最大的n位十进制数。
不僈
·
2023-04-11 23:48
#
牛客刷题专栏
c语言
开发语言
【牛客刷题专栏】0x18:JZ16 数值的整数次方(C语言编程题)
题目来自:牛客/题库/在线编程/
剑指
offer:目录前言问题描述:举例:解法思路:代码结果:结束语问题描述:实现函数doublePower(doublebase,intexponent),求base的exponent
不僈
·
2023-04-11 23:48
#
牛客刷题专栏
c语言
开发语言
上一页
66
67
68
69
70
71
72
73
下一页
按字母分类:
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
其他