首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
nailperry
中央民族大学
2016届
安卓工程师
继续修炼~
关注
私信
加入黑名单
举报TA
首页
刷题
圈子
项目
笔记
基本资料
真题试卷
在线编程
心理测试
回答的问题(44)
求1+2+3+...+n
352
解题思路: 1.需利用逻辑与的短路特性实现递归终止。 2.当n==0时,(n>0)&&((sum+=Sum_Solution(n-1))>0)只执行前面的判断,为false,然后直接返回0; 3.当n>0时,执行sum+=Sum_Solution(n-1),实现递归...
发表于 2015-08-14 09:42:06
复杂链表的复制
0
注意一点:返回时,还原原始链表的结构。
发表于 2015-08-13 22:00:26
替换空格
0
解题思路: 1.统计空格个数。 2.扩展StringBuffer长度。 3.从右向左移动原字符。 public String replaceSpace(StringBuffer str) { if(str==null||str.equals("&q...
发表于 2015-08-13 15:15:04
树的子结构
8
/* 改进算法,时间复杂度O(m+n) * 1.将root1和root2分别按先序遍历序列化。 * 2.运用KMP算法匹配序列化结果。 */ public boolean HasSubtree(TreeNode root1,TreeNode root2) { ...
发表于 2015-08-13 14:37:22
翻转单词序列
10
解题思路:先翻转每个单词,再翻转整个句子 细节很重要,要特别考虑到“ ”等输入中包含多余空格的情形 方法一:使用split public String ReverseSentence(String str) { if(str==null||str.trim().e...
发表于 2015-08-13 09:07:02
二叉树平衡检查
0
解题思路:递归 1.每个节点只遍历一次,先遍历当前节点的左右子树,若左右子树均平衡,再来考虑当前层是否平衡,并计算当前层高度。 2.递归的终止条件:当前节点为null时,视为平衡,高度为0。 public boolean isBalance(TreeNode root) { int...
发表于 2015-08-12 21:46:13
二叉搜索树与双向链表
805
方法一:非递归版 解题思路: 1.核心是中序遍历的非递归算法。 2.修改当前遍历节点与前一遍历节点的指针指向。 import java.util.Stack; public TreeNode ConvertBSTToBiList(TreeNode root) { if(ro...
发表于 2015-08-12 14:31:58
二叉搜索树的后序遍历序列
0
public boolean VerifySquenceOfBST(int [] sequence) { if(sequence==null||sequence.length==0) return false;// 视题目要求而定 return VerifySq...
发表于 2015-08-12 14:05:44
检查是否为BST
7
解题思路: 1.已知中序遍历排序二叉查找树,得到的序列应是有序的。 2.因此,可以在非递归遍历二叉查找树的中间过程中,取当前遍历节点的值与上一遍历节点值进行比较,若当前节点的值不小于上一节点的值,则继续遍历至结束,否则,返回false。 3.二叉树中序遍历非递归算法需要借助栈来实现。 pub...
发表于 2015-08-12 13:11:14
把二叉树打印成多行
0
/* * 用队列实现层序遍历,这里的队列是用ArrayList来模仿的,队列中的每个元素为TreeNode及其对应的层level。 * 将TreeNode节点p的左右节点压入队列时,对应的level为p.level+1 * */ static class LevelNode{ Tr...
发表于 2015-08-11 14:53:37
首页
上一页
1
2
3
4
5
下一页
末页
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题