题目:对于一颗完全二叉树,要求给所有节点加上一个pNext指针,指向同一层的相邻节点;如果当前节点已经是该层的最后一个节点,则将pNext指针指向NULL;给出程序实现,并分析时间复杂度和空间复杂度。
运用队列,按层遍历,每次遍历一层时,添加新指针,由于每个节点只需要进队一次出队一次,时间复杂度为O(n),空间复杂度为O(n),具体代码如下:
#include
#include
#includ...
分类:
其他好文 时间:
2014-08-06 19:10:42
阅读次数:
184
1、谈谈final, finally, finalize的区别。final:修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变...
分类:
编程语言 时间:
2014-08-05 13:38:19
阅读次数:
293
本文是在Cat Qi的参考原帖的基础之上经本人一题一题练习后编辑而成,非原创,仅润色而已。另外,本文所列题目的解法并非只有一种,本文只是给出比较普通的一种而已,也希望各位园友能够自由发挥。一、书到用时方恨少:"图书-读者-借阅"类题目1.1 本题目的表结构 本题用到下面三个关系表: CARDS .....
分类:
数据库 时间:
2014-08-04 17:34:17
阅读次数:
488
一道笔试题~实现2个超大数据的加法运算,这2个超大数,意思就是long也装不下的数,就顶大概100位吧。这道题其实看上去很简单,但是实际上涉及到的知识点还是很多的,非常考验一个人的程序设计能力和对API的熟悉程度。思路很简单,这么大的数,long都存不下,那只能存在String中了,然后将每个数字取出,放到数组,由最末位开始计算,算加法,判断是否进位,进位则前位+1,若超过长度,则copy到新的数...
分类:
其他好文 时间:
2014-08-03 18:06:27
阅读次数:
260
一、JAVA部分:
二、Android部分:...
分类:
移动开发 时间:
2014-08-02 18:25:33
阅读次数:
298
short a = 1; a = a + 1; 有错吗? short a = 1; a += 1; 有错吗?对于short a = 1; a = a + 1;由于a + 1 运算时会自动提升表达式的类型,所以结果是int型,再复制short类型a时,编译器将报告需要强制装换类型的错误。对于short...
分类:
编程语言 时间:
2014-08-02 18:04:53
阅读次数:
370
本文是在Cat Qi的参考原帖的基础之上经本人一题一题练习后编辑而成,非原创,仅润色而已。另外,本文所列题目的解法并非只有一种,本文只是给出比较普通的一种而已,也希望各位园友能够自由发挥。一、三点一线当学霸:“学生-课程-成绩”类题目1.1 本题目的表结构 Student(S#,Sname,S...
分类:
数据库 时间:
2014-08-02 15:09:53
阅读次数:
618
2014年去哪儿网笔试题--给定一个整型数组,对这个整型素组排序,使得按序拼接数组各元素得到的值最小。
我的大致思路是把这个整型数组转换成String数组,然后通过String类的compareTo方法对这个数组进行第一次排序,排序得到的结果恰好是按字典序排序,而字典序又恰好是数字从0-9的顺序,恰好符合这个要求。最后进行检验下,有的可能需要调换下顺序使得数最小。
package co...
分类:
其他好文 时间:
2014-08-02 10:03:23
阅读次数:
296
冰哥哥最近在刷笔试题,昨晚问了一个没有意义,但很有意思的一个问题:求输出:#includeint main(){ int a=10; a+=a-=a++; std::cout操作符属于同一优先级,所以不能写出a->b++这样的表达式)于是,上面的运算表达式可以写成:a+=a-...
分类:
编程语言 时间:
2014-08-02 09:59:43
阅读次数:
289
1、某目录下所有文件统一批量修改ip 2、获取登陆者自身ip3、删除某目录下小于10b的文件4、通过Linux执行MySQL脚本5、监控某Java进程下所有线程数6、QTP、watir与selenium的优劣对比7、什么是回归测试,侧重点是什么8、什么是场景下考虑性能测试9、简述安全测试流程10、....
分类:
其他好文 时间:
2014-08-01 10:40:11
阅读次数:
333