- 博客(4)
- 收藏
- 关注
原创 剑指offer-----求斐波那契数列的第n项
1、题目描述大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项。n2、思路运用递归,前面第一项的值加上前面第二项的值就得到当前项的值,效率很低,因为将程序抽象为一棵树后,从上往下计算,其中有许多节点是需要重复计算的。代码如下:public class Solution { /* 利用递归的方法,效率很低,因为将程序抽象为一棵树后
2018-01-31 18:09:55 221
原创 剑指offer-----旋转数组的最小数字
题目描述:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。思路:设置两个指针,第一个指针指向数组的第一个元素,第二个指针指向数组的最后一个元素,进
2018-01-31 13:34:16 119
原创 剑指offer-----用两个栈实现队列
题目描述: 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。思路: 定义两个栈,增加元素时,将元素压入第一个栈中,要删除元素时,将第一个栈中的所有元素压入到第二个栈中,从第二个栈中删除栈顶元素;再要删除元素时,继续从第二个栈中弹出栈顶元素,直到第二个栈中没有元素,再将栈1中的所有元素压入第二个栈中,如此往复。从而使用先进后出的栈实现先进先出的队列。代码如...
2018-01-30 13:45:16 92
原创 剑指offer-----从尾到头打印链表
一、解法1,利用栈,将链表中的元素,从头开始存入栈中,将栈中的元素依次弹出,即从尾到头打印链表。代码如下:import java.util.ArrayList;import java.util.Stack;class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }...
2018-01-28 14:47:23 107
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人