Loading

上一页 1 ··· 22 23 24 25 26 27 28 29 30 ··· 42 下一页
摘要: 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 编程思想 因为n级台阶,第一步有n种跳法:跳1级、跳2级、到跳n级跳1级,剩下n-1级,则剩下跳法是f(n-1)跳2级,剩下n-2级,则剩下跳法是f(n-2)所以f(n)=f(n 阅读全文
posted @ 2019-07-28 11:49 Parzulpan 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 编程思想 对于本题,前提只有 一次 1阶或者2阶的跳法。a.如果两种跳法,1阶或者2阶,那么假定第一次跳的是一阶,那么剩下的是n-1个台阶,跳法是f(n-1);b.假定第 阅读全文
posted @ 2019-07-28 11:47 Parzulpan 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 题目描述 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。n<=39 编程思想 知道斐波拉契数列的规律即可。 编程实现 class Solution { public: int Fibonacci(int n) { int preNum = 1; 阅读全文
posted @ 2019-07-28 11:41 Parzulpan 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 题目描述 使用队列实现栈的下列操作:push(x) -- 元素 x 入栈;pop() -- 移除栈顶元素;top() -- 获取栈顶元素;empty() -- 返回栈是否为空; 编程思想 利用双队列实现,创建两个队列 q1,q2。 入栈:将元素 x 直接放入 q1 队列中。 出栈:也就是把 q1 的 阅读全文
posted @ 2019-07-28 11:29 Parzulpan 阅读(226) 评论(0) 推荐(0) 编辑
摘要: 题目描述 使用队列实现栈的下列操作:push(x) -- 元素 x 入栈;pop() -- 移除栈顶元素;top() -- 获取栈顶元素;empty() -- 返回栈是否为空; 编程思想 利用双队列实现,创建两个队列 q1,q2。 入栈:将元素 x 直接放入 q1 队列中。 出栈:也就是把 q1 的 阅读全文
posted @ 2019-07-28 11:29 Parzulpan 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 题目描述 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 使用栈实现队列的下列操作:push(x) -- 将一个元素放入队列的尾部。pop() -- 从队列首部移除元素。peek() -- 返回队列首部的元素。empty() -- 返回队列是否为空。 你只能使用 阅读全文
posted @ 2019-07-28 11:25 Parzulpan 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 题目描述 给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。 编程思想 根据中序遍历的特点:左根右。可分为三种情况:1. 一个节点有右子树,那么它的下一个节点就是它的右子树的最左子节点。2. 一个节点没有右子树且它还 阅读全文
posted @ 2019-07-28 11:10 Parzulpan 阅读(191) 评论(0) 推荐(0) 编辑
摘要: 题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 编程思想 若前序或者中序序列为空或者长度不等则返回空 阅读全文
posted @ 2019-07-28 10:39 Parzulpan 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 前序遍历 递归版 编程思想 即借助系统栈,效率较低。二叉树的前序遍历规则:1. 访问根结点; 2. 遍历左子树; 3. 遍历右子树 编程实现 //树的定义 struct TreeNode { int val; TreeNode *left; TreeNode *right; TreeNode(int 阅读全文
posted @ 2019-07-28 00:03 Parzulpan 阅读(603) 评论(0) 推荐(0) 编辑
摘要: 题目描述 输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。 编程思想 从前往后遍历,将值存入栈中,然后打印栈中内容即可。 编程实现 /** * struct ListNode { * int val; * struct ListNode *next; * ListNode(int x 阅读全文
posted @ 2019-07-27 23:33 Parzulpan 阅读(116) 评论(0) 推荐(0) 编辑
上一页 1 ··· 22 23 24 25 26 27 28 29 30 ··· 42 下一页