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-
矩形覆盖
题目描述我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?classSolution{public:intdp[40];boolfirst=true;intrectCover(intnumber){if(first){calcDP();first=false;}returndp[number];}voidcalcDP()
yhn19951008
·
2020-06-30 07:16
剑指offer
牛客网剑指
offer-
左旋转字符串
题目描述汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果。对于一个给定的字符序列S,请你把其循环左移K位后的序列输出。例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果,即“XYZdefabc”。是不是很简单?OK,搞定它!classSolution{public://先把字符串第一个字符提出来,产生一个空位,然后依次把对应
yhn19951008
·
2020-06-30 07:16
剑指offer
剑指
offer-
找工作必看的书
书的由来:作者海涛2011年9月,发了60篇关于面试的博客,当时点击量超过了70万,网址http://zhedahht.blog.163.com/,后来整理成书,剑指offer,马上要找工作高潮了,准备准备以防不测。1共享桌面远程面试是指应聘者把桌面远程传给面试官看。这时要注意几个问题:(1)思考清楚再写代码。这样就可以少再代码完成以后,修改。要考虑好时间复杂度,空间复制度,有些什么特殊情况要处理
右罗
·
2020-06-30 03:54
史上最全算法学习资料整理
结构之法
算法之道
(博客专
jkkongkong
·
2020-06-29 22:03
BFPRT算法求第k大数
BFPRT算法_小彰_百度空间十四、第三章再续:快速选择SELECT算法的深入分析与实现-结构之法
算法之道
-博客频道-CSDN.NET找最小的K个数-Stayhungry,Stayfoolish-博客频道
时雨晴天
·
2020-06-29 18:30
学习轨迹
搜索
剑指
offer-
合并两个排序的链表
题目描述输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。算法思想合并两个有序的链表非常的简单。首先申请一个输出链表①判断两个链表是否都为空,如果都为空返回空。②判断两个链表谁小,将小的链表的节点放在输出链表上,然后再进行比较③当其中一个链表为空了,直接把剩下的不为空的链表接在输出链表后面即可代码实现#includeusingnamespacestd;st
while10
·
2020-06-29 18:46
C++
剑指offer
iOS-算法集锦-剑指
offer-
百题详解之二
11.旋转数组的最小数字12.矩阵中的路径13.机器人的运动范围14.剪绳子15.二进制中1的个数16.数值的整数次方17.打印从1到最大的n位数18.1在O(1)时间内删除链表节点18.2删除链表中重复的结点19.正则表达式匹配20.表示数值的字符串阅前需知1.本文部分内容参考剑指offer题解,如有侵权,请告知。其他内容均属原创,转载请告知。2.本文示例代码中给一些类增加了一些类扩展,因篇幅原
路飞_Luck
·
2020-06-29 18:24
剑指
OFFER-
左旋转字符串
剑指
OFFER-
左旋转字符串QuestionSolutionQuestion汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果。
Ms M
·
2020-06-29 12:40
剑指
OFFER-
最小的K个数
剑指
OFFER-
最小的K个数QuestionSolution暴力破解-sort最小数组sortQuestion输入n个整数,找出其中最小的K个数。
Ms M
·
2020-06-29 12:40
剑指
OFFER-
数字在排序数组中出现的次数
剑指
OFFER-
数字在排序数组中出现的次数QuestionSolution折半查找Question统计一个数字在排序数组中出现的次数。
Ms M
·
2020-06-29 12:40
剑指
OFFER-
复杂链表的复制
剑指
OFFER-
复杂链表的复制QuestionSolution储存random查找已存在的结点复制并拆分Question输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点
Ms M
·
2020-06-29 12:40
剑指
OFFER-
把数组排成最小的数
剑指
OFFER-
把数组排成最小的数QuestionSolution重载比较函数Question输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。
Ms M
·
2020-06-29 12:40
剑指
offer-
数组中重复的数字
本题和287题类似,寻找重复的数字,但据博主观察,287题定义的范围是1~n,给定数组长度为n+1,即给定长度为4的数组,可取的值的范围为1,2,3,那么必然还有一个数,是重复的。该题,定义的范围是0~n-1,给定数组长度为n,即给定长度为4的数组,可取值的范围0,1,2,3,那么不一定存在重复的数字。就不能用287的方法,因为可取值0的存在。本题解法,利用范围0~n-1,即索引值,将对应的索引上
liubeiandcaocao
·
2020-06-29 01:21
剑指offer
再看几遍
编程艺术第二十三~四章&十一续:杨氏矩阵查找,倒排索引关键词Hash编码
出处:结构之法
算法之道
。
weixin_34268310
·
2020-06-28 15:04
从LSM-Tree、COLA-Tree谈到StackOverflow、OSQA(召唤前端)
从LSM-Tree、COLA-Tree谈到StackOverflow、OSQA作者:July,chx/@罗勍出处:结构之法
算法之道
blog导读本文重点谈了4个东西,LSM-Tree及COLA-Tree,
weixin_34150830
·
2020-06-28 12:16
剑指Offer - 九度1512 - 用两个栈实现队列
剑指
Offer-
九度1512-用两个栈实现队列2013-11-2921:23题目描述:用两个栈来实现一个队列,完成队列的Push和Pop操作。队列中的元素为int类型。
weixin_30897079
·
2020-06-28 02:53
从上百幅架构图中学大型网站建设经验(上)
从上百幅架构图中学大型网站建设经验(上)浏览次数:344次2011年10月06日结构之法
算法之道
字号:大中小分享到:QQ空间新浪微博腾讯微博人人网豆瓣网开心网更多1引言近段时间以来,通过接触有关海量数据处理和搜索引擎的诸多技术
weixin_30736301
·
2020-06-28 00:22
剑指
offer-
数字在排序数组中出现的次数
题目:统计一个数字:在排序数组中出现的次数。举例说明例如输入排序数组{1,2,3,3,3,3,4,5}和数字3,由于3在这个数组中出现了4次,因此输出4。解题思路利用改进的二分算法。如何用二分查找算法在数组中找到第一个k,二分查找算法总是先拿数组中间的数字和k作比较。如果中间的数字比k大,那么k只有可能出现在数组的前半段,下一轮我们只在数组的前半段查找就可以了。如果中间的数字比k小,那么k只有可能
weixin_30376163
·
2020-06-27 18:46
剑指
offer-
面试题40:最小的K个数
题目描述输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。参考方法面试题39:数组中出现次数超过一半的数字解法一:时间复杂度O(nlogn)先按照从小到大的顺序快速排序。输出前K个数字。classSolution{public:vectorGetLeastNumbers_Solution(vectorinput,intk){v
wchzh2015
·
2020-06-27 14:45
剑指
offer
剑指offer题解汇总
剑指
offer-
面试题3-1:找出数组中重复的数字剑指
offer-
面试题3-2:不修改数组找出重复的数字剑指
offer-
面试题5:替换空格剑指
offer-
面试题6:从尾到头打印链表剑指
offer-
面试题
wchzh2015
·
2020-06-27 14:45
剑指
offer
每天一道剑指
offer-
把数组排成最小的数
题目每天一道剑指
offer-
把数组排成最小的数来源:https://www.nowcoder.com/practice/fe6b651b66ae47d7acce78ffdd9a96c7?
程序员乔戈里
·
2020-06-27 13:17
【转自JULY大佬】程序员面试、算法研究、编程艺术、红黑树、机器学习5大系列集锦
6543438程序员面试、算法研究、编程艺术、红黑树、机器学习5大经典原创系列集锦与总结(七月在线:https://www.julyedu.com/,面试&算法&机器学习在线课程)作者:July--结构之法
算法之道
或许对了
·
2020-06-27 12:29
程序员面试、算法研究、编程艺术、红黑树、机器学习5大系列集锦
程序员面试、算法研究、编程艺术、红黑树、机器学习5大经典原创系列集锦与总结作者:July--结构之法
算法之道
blog之博主。
v_JULY_v
·
2020-06-27 10:47
微软面试100题系列
程序员编程艺术
经典算法研究
九度oj-剑指
offer-
题目1510:替换空格
题目地址:http://ac.jobdu.com/problem.php?pid=1510题目描述:请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为WeAreHappy.则经过替换之后的字符串为We%20Are%20Happy。输入:每个输入文件仅包含一组测试样例。对于每组测试案例,输入一行代表要处理的字符串。输出:对应每个测试案例,出经过处理后的字符串。样例输入:WeAre
yuchiwang
·
2020-06-27 07:34
C语言基础
剑指
offer-
丑数(Java)
题目描述把只包含因子2、3和5的数称作丑数(UglyNumber)。例如6、8都是丑数,但14不是,因为它包含因子7。习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。思路:使用一个数组将之前已经求出来的丑数保存起来,然后依次用2,3,5乘上数组中已经求出来的丑数,选出其中最小的一个保存到数组中。假设数组中存的最大丑数是Max,那么只要求出2,3,5乘以数组中的某一个数刚好比Max大
HankingHu
·
2020-06-27 06:27
算法
图解算法
剑指
offer-
把数组排成最小的数(Java)
题目描述输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。思路:数组中所有的数拼接后有可能会超过整数的范围,因此本题必须要使用字符串来处理。要对3,32,321排序,不能直接比较32,3的大小,应该比较323,332的大小,即,3,32的大小应该有323,332的大小来确定
HankingHu
·
2020-06-27 06:27
算法
图解算法
剑指
offer-
面试题5-刷题及总结(python)
从头到尾打印链表解题思路代码实现(python)解题总结题目:输入一个链表的头结点,从尾到头反过来打印出每个结点的值。链表结点定义如下:structListNode{intm_nKey;ListNode*m_pNext;};解题思路首先,这是一个单链表,它的指针是从头到尾的,遍历只能顺序遍历,现在要反序输出,很多人的想法是反转指针,让所有指针都反过来,但是这样就改变了链表的结构,这要问面试官的要求
DanielYQ
·
2020-06-27 03:39
算法
剑指
offer-
面试题4-(举一反三)-刷题及总结(python)
替换空格解题思路代码实现(python)解题总结题目:有两个排序的数组A1和A2。内存在A1的末尾有足够多的空余空间容纳A2。请实现一个函数,把A2中的所有数字插入到A1中并且所有的数字是排序的。解题思路这道题是面试题4-替换空格的相关题目,和那道例题一样,首先想到的可能是在A1中从头到尾复制数字,但这样就会出现多次复制一个数字的情况,更好的办法是从尾到头比较A1和A2中的数字,并把较大的数字复制
DanielYQ
·
2020-06-27 03:39
算法
剑指
offer-
面试题3-刷题及总结(python)
二维数组中的查找解题思路代码实现(python)解题总结题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。解题思路由于第一次做这种类型的题目,对于这种查找不太熟悉,模拟一下查找过程,把数组想象成n*m的矩阵,如果取数组中间位置的数字a与该整数比较,那比较结果可能有三种,大于等于
DanielYQ
·
2020-06-27 03:39
算法
python
二维数组
查找
剑指offer
2.剑指
offer-
数组中滑动窗口的最大值
2.剑指
offer-
数组中滑动窗口的最大值1.问题描述给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。
douniwanli
·
2020-06-27 03:01
leetcode
剑指
offer-
合并两个有序链表
输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。思路1:非递归实现依次比较两个链表的首结点,取较小的的结点放到第三个链表尾,同时移动较小节点所在链表的指针指向下一个节点。步骤一结果会有一个链表先遍历结束第三个链表尾结点指向剩余未遍历结束的链表返回第三个链表首结点/*structListNode{intval;structListNode*next;Lis
柠檬橙1024
·
2020-06-27 01:03
剑指offer
LintCode-剑指
Offer-
(50)数组剔除元素后的乘积
classSolution{public:/***@paramA:GivenanintegersarrayA*@return:AlonglongarrayBandB[i]=A[0]*...*A[i-1]*A[i+1]*...*A[n-1]*/vectorproductExcludeItself(vector&nums){//writeyourcodeherevectortmpv;for(inti=
风顺水流
·
2020-06-27 01:44
LintCode
牛客网 复杂链表的复制
(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空)解答:思路参考:《苦练算法》-剑指
Offer-
二十五、复杂链表的复制-python编写先复制原来链表复制相互之间的random关系将两个链表拆分
沙漏dan
·
2020-06-26 17:14
数据结构
牛客网
剑指
offer-
在线编程(牛客网)- 基础知识
声明:本博客中的代码都是自己实现,若有问题,请大家不吝赐教!面试需要的基础知识--------数组【面试题3】数组中重复的数字在一个长度为n的数组里的所有数字都在0到n-1的范围内。数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2。分析:因为数
snowbaby1234
·
2020-06-26 13:52
代码实现
算法
[python]剑指
Offer-
替换空格
牛客OJ:替换空格Description:请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为WeAreHappy.则经过替换之后的字符串为We%20Are%20Happy。思路一:新建字符串,依次遍历输入字符串,若为空格则替换后加入新字符串,若非空格则直接加入。#-*-coding:utf-8-*-#运行时间:22ms#占用内存:5860kclassSolution:#s源
iamaline
·
2020-06-26 11:16
每天一道算法题
[python]剑指
Offer-
从尾到头打印链表
牛客OJ:从尾到头打印链表Description:输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。思路一:用一个list把链表中的元素依次压入,然后对链表进行翻转。注意:python中list.reverse()没有返回值,故不能直接returnlist.reverse();也不能令list2=list.reverse()再returnlist2。#-*-coding:utf-8-
iamaline
·
2020-06-26 11:16
每天一道算法题
剑指
offer-
从尾到头打印链表
输入是一个链表,需要从尾到头打印链表,如果说不改变链表的顺序,那么链表肯定是从头向尾遍历嘛,其实可以用一个栈的结果,将数据都压入栈中,压完了再输出就完成了从尾到头打印链表。当然从尾到头打印链表前,先科普一个构建单链表的方法哈。两点节点不断加入Node*creatList(Node*pHead){Node*p1;Node*p2;p1=p2=(Node*)malloc(sizeof(Node));//
shashakang
·
2020-06-26 08:47
那些年我做过的编程题
剑指
offer-
二叉树中的下一个节点
文章目录问题描述解析代码问题描述给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针解析要找到中序遍历下的下一个节点。这个节点可以分为两种情况一、该节点有右子树二、该节点没有右子树第一种比较处理起来比较简单,直接将其右节点进行中序遍历即可,并将一个遍历到的最右节点返回。第二种情况又分为两种情况1、该节点是父节点的左子节
qq_43561014
·
2020-06-26 02:09
算法
2019-09-13[剑指
offer-
]删除链表中重复的节点
题目描述在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。例如,链表1->2->3->3->4->4->5处理后为1->2->5/*structListNode{intval;structListNode*next;ListNode(intx):val(x),next(NULL){}};*/classSolution{public:ListNode*d
Coding破耳
·
2020-06-25 22:27
剑指
offer-
复杂链表的复制
输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空)分析直接思路:第一步复制原始链表上的每一个节点,用next指针进行连接,这一步比较好处理;第二步设置每一个节点的random指针。假设原始链表中的某个节点N的随机指针random指向节点
ReginaPhilange
·
2020-06-25 20:40
剑指offer
剑指
offer-
数组中只出现一次的数。
剑指
offer-
数组中只出现一次的数。前提:首先要知道异或运算和与运算的功能。对于两个数,如果相同,异或运算结果为0,不同异或为一。
玄月九九重又一
·
2020-06-25 16:16
剑指offer编程题
剑指
offer-
调整数组顺序使奇数位于偶数前面——Java解法
题目:输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。解法一思路简介:要求数组中奇数在偶数前边,并且相对顺序不变,可能大家想到的是排序的稳定性,当然也有用插入排序解题的,但是咱们这里不用插入排序。使用两个list来分别存放数组中的奇数和偶数(list动态扩容,无需声明长度),然后
玄月九九重又一
·
2020-06-25 16:15
剑指offer编程题
剑指
Offer-
二维数组中的查找
剑指
Offer-
二维数组中的查找题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。
漠翊歌
·
2020-06-25 08:12
Java
剑指Offer
算法
剑指
Offer-
左旋转字符串
剑指
Offer-
左旋转字符串packageString;/***左旋转字符串*汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果。
武培轩
·
2020-06-25 03:27
#
剑指Offer
算法
剑指
Offer-
把数组排成最小的数
剑指
Offer-
把数组排成最小的数题目描述输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。
武培轩
·
2020-06-25 03:27
#
剑指Offer
算法
《剑指Offer》解题目录(更新完毕)
❤❤❤已解题目剑指
Offer-
面试题3.数组中重复
Michael阿明
·
2020-06-25 00:05
《剑指Offer》
剑指
offer-
单例模式
单例模式定义和特点思路代码实现定义和特点单例(Singleton)模式的定义:指一个类只有一个实例,且该类能自行创建这个实例的一种模式单例模式有3个特点:1.单例类只有一个实例对象;2.该单例对象必须由单例类自行创建;3.单例类对外提供一个访问该单例的全局访问点;思路单例模式,有“懒汉式”和“饿汉式”,等不同的形式主要思路就三步:1.私有化构造函数(防止外部实例化)2.创建私有化的实例成员变量(用
可爱组长
·
2020-06-25 00:12
剑指offer
【Golang】LeetCode-剑指
Offer-
面试题56 - II-数组中数字出现的次数 II【两种解法】
题目在一个数组nums中除一个数字只出现一次之外,其他数字都出现了三次。请找出那个只出现一次的数字。示例1:输入:nums=[3,4,3,3]输出:4示例2:输入:nums=[9,1,7,9,7,9,7]输出:1限制:1<=nums.length<=100001<=nums[i]<2^31来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/shu-
士多啤梨先生
·
2020-06-25 00:12
LeetCode力扣个人题解
【Java】LeetCode-剑指
Offer-
面试题36-二叉搜索树与双向链表
题目输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的循环双向链表。要求不能创建任何新的节点,只能调整树中节点指针的指向。为了让您更好地理解问题,以下面的二叉搜索树为例:我们希望将这个二叉搜索树转化为双向循环链表。链表中的每个节点都有一个前驱和后继指针。对于双向循环链表,第一个节点的前驱是最后一个节点,最后一个节点的后继是第一个节点。下图展示了上面的二叉搜索树转化成的链表。“head”表示指向链表
士多啤梨先生
·
2020-06-25 00:12
LeetCode力扣个人题解
【Golang】LeetCode-剑指
Offer-
面试题31-栈的压入、弹出序列
题目输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。(假设压入栈的所有数字均不相等)例如,序列{1,2,3,4,5}是某栈的压栈序列,序列{4,5,3,2,1}是该压栈序列对应的一个弹出序列,但{4,3,5,1,2}就不可能是该压栈序列的弹出序列。示例1:输入:pushed=[1,2,3,4,5],popped=[4,5,3,2,1]输出:true解释:我们可以
士多啤梨先生
·
2020-06-25 00:41
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
其他