剑指Offer
满头白发的菜鸡
一个自认为是程序猿的小菜鸡
展开
-
因基础被坑死的——二进制中1的个数(剑指Offer)
今天打卡????客的时候,做的是剑指Offer中的求二进制中1的个数问题,然而,这么一道简单的题,却没有一遍AC,啊~我真是个基础不扎实的菜鸡!题目描述输入一个整数,输出该数32位二进制表示中1的个数。其中负数用补码表示。示例1输入 10返回值 2看见该题的第一眼自然而然的想到位移运算和与运算求解,so easy!代码如下: public int NumberOf1(int n) { int count = 0 ; while(n!=0) { if((n&1) =原创 2020-12-17 09:23:39 · 100 阅读 · 0 评论 -
剑指Offer——矩形覆盖(为什么是斐波那契数列)
该博文是对剑指Offer——矩形覆盖问题解法的说明。题目描述作为一个菜鸡程序猿,第一次看到这题的时候,我是一脸懵逼的,但是本着学习的态度参考书中解法时,又是一脸懵逼。你要问我为什么,下面我给你娓娓道来。。。剑指Offer中对这道题的解释如下:???什么????这是斐波那契数列???怎么来的???最后通过本菜鸡的不懈努力,终于明白了,下面请继续看我逼逼赖赖。以大矩形为2x6的情况进行说明,先上图:怎么用2x1的若干矩形覆盖2x6的大矩形呢?首先看方案1:即第一个图(写了F(4)的那个),该原创 2020-12-11 16:06:28 · 124 阅读 · 0 评论 -
剑指Offer——变态跳台阶(厉害的癞蛤蟆)
????客剑指Offer的第九题,变态跳台阶题目描述:一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。此题是第8题的进阶版,相对来说有一定的难度。下面给出我这个小菜鸡的思路。思路1:因为这个癞蛤蟆腿很有劲,所以弹跳力很好,可以一下跳1,2,3…,n个台阶,结合第8题的思路,当目标台阶为n时,这个癞蛤蟆可以从n-1处跳一个台阶,到达目标台阶n;也可以从n-2处跳2个台阶,到达目标n(千万别问为啥从n-2跳1个台阶到n-1然后再跳1个台阶原创 2020-12-10 21:23:09 · 227 阅读 · 0 评论 -
剑指Offer——旋转数组的最小数字(详细说明)
????客上剑指Offer题6,求解旋转数组的最小数字题目描述把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。示例[3,4,5,6,1,2]就是非递减排序数组[1,2,3,4,5,6]的一个旋转数组,输出的是旋转数组[3,4,5,6,1,2]中的最小值。解题思路一:看到求一个数组中的最小值,立马想到排序啊,然后输出第一个元素啊,so easy啊!给出思路原创 2020-12-10 11:16:06 · 113 阅读 · 0 评论 -
剑指Offer——求解斐波那契数列
剑指Offer7——求斐波那契数列题目描述输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0,第一项为1,n<=39)求解斐波那契数列应该是众所周知的问题,递归关系式为f(n)=f(n-1)+f(n-2).根据递归关系式即可直接求解,代码如下: public static int Fibonacci(int n) { if(n == 0 ) { return 0; } if(n == 1 ) { return 1;原创 2020-12-09 18:45:06 · 213 阅读 · 0 评论 -
剑指Offer4——根据二叉树的先序遍历和中序遍历构造二叉树
该文对剑指Offer的第四题根据二叉树的先序和中序遍历构造二叉树题目描述:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。示例输入:前序遍历:[1,2,3,4,5,6,7]中序遍历:[3,2,4,1,6,5,7]输出:二叉树:{1,2,5,3,4,6,7}想要做出该题,首先应该知道二叉树的前、中、后遍历。原创 2020-12-08 15:50:48 · 194 阅读 · 0 评论 -
不满足作对(JZ2 替换空格(Java))
菜鸡程序猿第一次写博客秋招结束后,处处不如意,为了更好的学习并记录,遂开始试着写写博客第一篇博客,献给剑指offer关于剑指offer题2(空格替换)的一些自己的看法题目描述:请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。因为本人学的是Java,一看到题目,立马想到String.replace()。第一次提交的代码: public String replaceSpace(Str原创 2020-12-01 16:40:17 · 101 阅读 · 0 评论