
剑指offer
又是重名了
一个正在学习的小蜗牛
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
纪念1024的一天-----打工人(算法)
输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构) 今天是1024但是还是无奈加班,于是就决定写一篇博客(当然不是为了徽章,手动狗头) 题解 首先的看到这个题目,先想到一个基本思路,就是循环遍历,递归,肯定是向方法里面输入两棵树的节点,然后他只是说判断后者是不是前者的子结构,所以我们认为A的高度>=B, 所以我们需要遍历A这一棵树即可,从结构上来说就是遍历A节点,A节点不等于B节点,就开始遍历A节点的左子树,右子树,然后如果还是没有则需要再次遍历A的左子树的左子原创 2020-10-24 15:20:30 · 182 阅读 · 0 评论 -
剑指offer第6789题
这一类的题目都是使用的斐波那契,其实也是使用递归的一种 第六题 解题思路 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0,第1项是1)。 n<=39 这种题可能会上来没有思路,我这里推荐使用数学归纳法,其实也就是找规律,和小学做的奥赛题一样, 斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家莱昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列原创 2020-10-05 14:56:15 · 254 阅读 · 0 评论 -
剑指offer第五题
把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组[3,4,5,1,2]为[1,2,3,4,5]的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。 重点:非递减 解题思路 在这里我们需要先明确啥叫非递减?一共有几种情况? 非递减 ...原创 2020-09-30 16:58:14 · 124 阅读 · 0 评论 -
剑指offer第四题
用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 解题思路 首先明白数据结构中两个栈为什么可以实现一个队列的功能,首先栈是什么,我自己的认知里栈是一个先进后出的数据结构 感觉数据结构这个东西你画图就很简单了 然后是队列的数据结构 这个是队的数据结构很好理解就是想排队一样,先进先出,所以基本上使用两个栈基本思路就有了两个栈一进一出就完成了顺序的队的先进先出 解题方法、 首先呢我们自己思考有几种情况,一共是两个栈,有四种情况, 第一种,第一个栈为空第二个栈为空,出现情况原创 2020-09-28 16:46:26 · 135 阅读 · 0 评论 -
剑指offer第三题
输入一个链表,按链表从尾到头的顺序返回一个ArrayList。 解题思路 首先当你面对的这个问题时候你需要注意到一个问题就是在这里没有要求链表会变成怎么样所以说方法大体上面有两种,第一种就是将链表逆序,然后存入ArrayList,或者是保持链表的顺序然后将元素逆序存入ArrayList中。 首先我们来尝试第二种,第一种破坏了原有的结构我们这里不做考虑。 具体实现 首先是链表的数据结构 class ListNode { int val; ListNode next = null原创 2020-09-28 10:22:52 · 140 阅读 · 0 评论 -
剑指offer第二题
剑指offer第二题 请实现一个函数,将一个字符串中的每个空格替换成“%20”。 例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 说来你们可能不信这是我刷剑指offer最简单的一个题 解题思路 其实吧我看这个题的没有想到可以直接用java的方法,然后用了java的方法直接return就通过了,哎,怪不得有人说java程序员算法不好呢。 然后这个的使用算法的解法其实有很多,我这里说一种普通的解法,就是通过char类型的数组来解决问题,遇到空格将其替换,原创 2020-09-02 22:18:36 · 152 阅读 · 0 评论 -
剑指offer第一题
没错,又开始刷剑指offer了这一次可能是最认真的一次了,因为真的不想去做运维了,准备一个月刷完吧! 第一题 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序, 每一列都按照从上到下递增的顺序排序。 请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 这是从牛客网上找的剑指offer的题目 首先我们们开始分析这个题,其实这个题目我从很早之前就做过了,首先我们可以先通过读题来获取一部分内容。 题目分析 首先呢,我们可以总结一下这个题目,其中的意思就是原创 2020-09-02 22:00:18 · 234 阅读 · 0 评论