摘要:题目:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 解该题目之前,我先来复习一下二叉树的遍历: 详见维基百科
阅读全文
摘要:题目:我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? return的值必须在方法之内 该题思考后为用任意1和2相加得到n的方法总数 此外,此处思考时逆向思考,对于n>=3的情况,假设最后一步是占了一列的覆盖法,则为f(
阅读全文
摘要:题目:一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 思路: n<=0时,有0种跳法 n=1时,只有一种跳法 n=2时,有两种跳法 已知当n>2时,当最后一次跳1级台阶,则之前有f(n-1)种跳法,当最后一次跳2级台阶时,之前有
阅读全文
摘要:题目:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。 本人解题思路:
阅读全文
摘要:编程题:大家都知道裴波那契数列,现在要求输入一个整数n,请你输出裴波那契数列的第n项(从0开始,第0项为0)。n<=39 第一遍程序,结果运行时间和占用内存都不理想。 裴波那契数列,嗯。。。我不属于“大家都知道”系列,先百度该数列,想起来了,这是高中数学接触的生兔子问题,即1、1、2、3、5、8、1
阅读全文
摘要:运用了递归的思想,递归的点在this.printListFromTailToHead(listNode.next),在最后一次递归方法返回后,每一层的递归方法都会做一个myList.add(listNode.val)的操作,从最后一次到第一次。 这是参考牛客网大神的说法,自己还需要再推敲推敲。 递归
阅读全文
摘要:因为自己还是一个菜菜,所以编代码的过程中参考了别人的思路,多谢大神,此外,还查阅了有关String,StringBuilder和StringBuffer三者的差别,转自高人的博客,自己又手打了一遍相关内容 链接为https://www.cnblogs.com/su-feng/p/6659064.ht
阅读全文