- 博客(26)
- 资源 (3)
- 收藏
- 关注
原创 剑指offer——删除链表中重复的结点
剑指offer——删除链表中重复的结点问题描述在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5思路分析判空两个指针,一个指向前一个节点preNode,另一个指向当前节点node.如果遇
2019-02-27 10:30:32
127
原创 剑指offer——链表中环的入口结点
剑指offer——链表中环的入口结点问题描述给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。思路分析判空用快慢指针,一个快 (每次两步),一个慢(每次一步)若相遇,则有环。不相遇则没有环。相遇后,让慢指针回到头结点,快指针从相遇结点继续走。此时的步长都为1,相遇时的结点即为入口结点。代码/* public class ListNode { ...
2019-02-26 19:11:42
145
原创 windows10下载安装anaconda3
windows10下载安装anaconda3百度anaconda,进入下载网址:https://www.anaconda.com/download/选择相应的版本进行下载。双击下载后的文件,按照提示安装。上面这一步可以跳过,也可以根据提示进行安装。这两个不选,直接finish就完成了。4.配置环境变量。此电脑->属性->高级系统设置->环...
2018-12-18 19:09:15
301
原创 剑指offer——表示数值的字符串
剑指offer——表示数值的字符串问题描述请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100",“5e2”,"-123",“3.1416"和”-1E-16"都表示数值。 但是"12e",“1a3.14”,“1.2.3”,"±5"和"12e+4.3"都不是。思路分析表示数值的字符串模式:A[.[B]] [e|EC],其中A为数值的整数部分。B小数点
2018-12-13 17:10:31
127
原创 字符串的排列
剑指offer——字符串的排列问题描述输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。思路分析1.先判断输入字符串是否为空,若是,则直接返回list。2.将字符串转换为数组。3.将切割后的每一部分存入数组。4.反向输出数组中的元素。每输出一个元素就输出一个空格...
2018-12-11 13:55:19
93
原创 剑指offer——正则表达式匹配
剑指offer——正则表达式匹配问题描述请实现一个函数用来匹配包括’ . ‘和’ * ‘的正则表达式。模式中的字符’.‘表示任意一个字符,而’ * '表示它前面的字符可以出现任意次(包含0次)。在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串"aaa"与模式"a.a"和"ab * ac * a"匹配,但是与"aa.a"和"a
2018-12-11 11:36:33
102
原创 剑指offer——构建乘积数组
剑指offer——构建乘积数组问题描述给定一个数组A[0,1,…,n-1],请构建一个数组B[0,1,…,n-1],其中B中的元素B[i]=A[0]*A[1] *…*A[i-1] * A[i+1] *…*A[n-1]。不能使用除法。思路分析不能用除法,所以把数组B看成由一个矩阵来创建 如:B[i]为矩阵中第 i 行所有元素的乘积 B[0] 1 A[1] A[2] ...
2018-12-11 09:55:39
95
原创 剑指offer——连续子数组的最大和
剑指offer——连续子数组的最大和问题描述求1+2+3+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。思路分析利用等差数列求和公式,Sn=(1+n)∗n/2=(n2+n)/2Sn=(1+n)*n/2 =(n^2+n)/2Sn=(1+n)∗n/2=(n2+n)/2Math.pow(x,y) 方法可返回 x 的 ...
2018-11-27 09:29:52
107
原创 剑指offer——孩子们的游戏(圆圈中最后剩下的数)
剑指offer——孩子们的游戏(圆圈中最后剩下的数)问题描述每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此。HF作为牛客的资深元老,自然也准备了一些小游戏。其中,有个游戏是这样的:首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为0的小朋友开始报数。每次喊到m-1的那个小朋友要出列唱首歌,然后可以在礼品箱中任意的挑选礼物,并且不再回到圈中,从他的下一个小...
2018-11-26 15:44:40
121
原创 剑指offer——扑克牌顺子
剑指offer——扑克牌顺子问题描述LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张_)…他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是顺子…LL不高兴了,他想了想,决定大\小 王可以看成任何数字,并且A看作1,J为11,...
2018-11-26 14:44:45
106
原创 剑指offer——连续子数组的最大和
剑指offer——连续子数组的最大和问题描述HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢?例如:{6,-3,-2,7,-15,1,2,2},连续子向量的最大和为8(从第0个开始,到第3个为止...
2018-11-19 17:58:16
113
原创 剑指offer——数组中出现次数超过一半的数字
剑指offer——数组中出现次数超过一半的数字问题描述数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。思路分析方法一:随机快速排序算法:给数组排序,根据题目意思可知,位于排序后数组中间的数字就是所求的数字。即长度为n的数组中的第...
2018-11-19 11:47:40
101
原创 剑指offer——数值的整数次方
剑指offer——数值的整数次方问题描述给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。思路分析这道题不是很难。但是需要考虑的因素很多。设最终结果为result情况一:当为0次方时,result=1;情况二:当为正整数次方时,没什么问题。result*=base;情况三:当为负整数次方时,先对指数求绝对值,算出结果再...
2018-11-15 15:24:17
90
原创 剑指offer——矩形覆盖
剑指offer——矩形覆盖问题描述我们可以用21的小矩形横着或者竖着去覆盖更大的矩形。请问用n个21的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?思路分析当n=8,2*8的覆盖方法记为f(8);^ ^ ^ ^ ^ ^ ^ ^ 2*8^ ^ ^ ^ ^ ^ ^ ^用 # 2*1 来覆盖。在最左边时有两种选择: # ...
2018-11-15 13:48:50
119
原创 剑指offer——变态跳台阶
剑指offer——变态跳台阶问题描述一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。思路分析当台阶为n=1,跳法f(n)=1;当台阶为n=2,跳法f(n)=2; 方法(1,1)(2)当台阶为n=3,跳法f(n)=4; 方法(1,1,1)(1,2)(2,1)(3)当台阶为n=4,跳法f(n)=8; 方法(1,1,1,1)(1...
2018-11-15 13:25:23
112
原创 剑指offer——旋转数组的最小数字
剑指offer——旋转数组的最小数字问题描述把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。思路分析1.先判断数组是否为空,数组的元素是否大于零。2.观察会发现旋...
2018-11-15 11:53:56
153
原创 剑指offer——跳台阶
剑指offer——跳台阶问题描述一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。思路分析当台阶为n=1,跳法f(n)=1;当台阶为n=2,跳法f(n)=2; 方法(1,1)(2)当台阶为n=3,跳法f(n)=3; 方法(1,1,1)(1,2)(2,1)当台阶为n=4,跳法f(n)=5; 方法(1,1,1,1)(1,...
2018-11-14 11:40:12
106
原创 剑指offer——斐波那契数列
剑指offer——斐波那契数列问题描述大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。n<=39注:斐波那契数列的定义f(n)={0n=01n=1f(n−1)+f(n−2)n&gt;1f(n) = \begin{cases} 0 &amp; n= 0 \\1 &amp; n=1 \\f(n-1)+...
2018-11-14 11:12:52
91
原创 剑指offer——二维数组的查找
剑指offer——二维数组的查找问题描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。思路分析1.先判断二维数组构成的矩阵是否为空,行、列是否大于0。2.举例说明。 如:二维数组为 查找是否含有5 1 2 7 ...
2018-11-13 16:37:19
220
原创 剑指offer——数组中重复的数字
剑指offer——数组中重复的数字问题描述在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2思路分析1.先判断数组是否为空,若是,则返回这个false。并且判断数字是否在0到n-...
2018-11-13 15:48:21
84
原创 剑指offer——反转单词顺序列
剑指offer——反转单词顺序列问题描述牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。例如,“student. a am I”。后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是“I am a student.”。Cat对一一的翻转这些单词顺序可不在行,你能帮...
2018-10-10 14:16:38
124
原创 剑指offer——左旋转字符串
剑指offer——左旋转字符串问题描述汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果。对于一个给定的字符序列S,请你把其循环左移K位后的序列输出。例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果,即“XYZdefabc”。是不是很简单?OK,搞定它!思路分析1.先判断输入字符串的长度,若输入的字符串个数小于1,或...
2018-10-10 11:25:53
98
原创 剑指offer——和为S的连续正数序列
剑指offer——和为S的连续正数序列问题描述小明很喜欢数学,有一天他在做数学作业时,要求计算出9~16的和,他马上就写出了正确答案是100。但是他并不满足于此,他在想究竟有多少种连续的正数序列的和为100(至少包括两个数)。没多久,他就得到另一组连续正数和为100的序列:18,19,20,21,22。现在把问题交给你,你能不能也很快的找出所有和为S的连续正数序列? Good Luck!输出...
2018-10-10 10:30:10
82
原创 剑指offer——和为S的两个数字
剑指offer——和为S的两个数字问题描述输入一个递增排序的数组和一个数字S,在数组中查找两个数,使得他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的。思路分析1.先判断输入数组的长度,若输入的数组个数小于两个数,或者为空,则返回这个数组。2.由于数组是递增的,根据快速排序的思想,定义两个指针,一个指向数组开始,一个指向数组结尾。如:数组为2,3,4,5,6,7,8 ...
2018-10-09 16:13:46
84
原创 剑指offer——最小的K个数
剑指offer——最小的K个数问题描述输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4。思路分析1.先判断K的大小,若K大于输入的数字个数,则返回所有的这些数。2.对输入的这组数进行排序,此处是从大到小进行排序,然后选取排序后末尾的K个数。补充:排序的相关问题,会再写一篇博客说明。代码import java.u...
2018-09-29 11:38:18
231
原创 剑指offer——二进制中1的个数
剑指offer——二进制中1的个数问题描述输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。思路分析1.判断输入的整数是否为0,显然0的二进制中没有1,所以返回0。2.利用按位与的思路,将n与n-1相与,依次从右边消除1,直到为0,并统计1的个数。补充说明:按位与(&):对应位置都为1,取1。按位或(|): 对应位置有1就取1。如:当n=6,n-1=5时...
2018-09-29 10:39:02
86
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人