千橡技术基础测试

1. 小明和小强都是张老师的学生,张老师的生日是M月N日,2人都知道张老师的生日是下列10组中的一天
3月1日 3月5日
6月4日 6月7号
9月4日 9月5号 9月8日
12月1日 12月2日 12月8日
张老师把M值告诉了小明,把N值告诉了小强,张老师问他们知道他的生日是那一天吗?
小明说:如果我不知道的话,小强肯定也不知道
小强说:本来我也不知道,但是现在我知道了
小明说:哦,那我也知道了
请根据以上对话,推断出张老师的生日是哪一天,请写出推理过程。
2. 有6武汉士兵晚上要巡逻,每人配备一把枪,如果6个人完全随机取一把枪,至少有一个取到自己的枪的概率是多少?(写出算式即可)
3. 一个路口30分钟内有车通过的概率是90%,则10分钟内有车通过的概率是多少?(写出算式即可)
4. Linux系统中:
用于创建进程的系统调用是:_____
结束后台进程的命令是:_______
改变文件所有者的命令为_______
为脚本程序指定执行权的命令及参数是______
5. 什么是中断?中断发生时CPU做什么工作?
6. 画出OSI七层模型和TCP/IP协议栈的四层模型,并完成对应。
7. 数据库索引文件一般采用什么数据结构?创建非主键的索引,会对更新速度和查询速度造成什么影响?
8. 如下数据结构,表示树的节点:
Typedef struct TreeNode{
Char c;
TreeNode * leftchild;
TreeNode * rightchild;
}
定义:A,B两棵树相等,当且仅当rootA.C ==rootB.c,而且A和B的左右子树对应相等或左右互换后相等。请实现两棵树是否相等的比较,相等返回0;否则返回其它值。并说明算法复杂度。
Int CompTree(TreeNode * rootA,TreeNode * rootB)
9. 字符串处理:写出一个函数,返回字符串按空格分割,倒置的结果,例:输入“I love the game”,输出“game the love I”.使用JAVA或C语言。
Char * reverse(char * in)
String reverse(String in)
10. 寻找最常见的名字:校内网是国内最大的实名制社区。现在校内网的一千万个用户的名字组成的一个文本文件,其中每一行为一个名字,其中很多名字重复出现多次,一个名字重复次数越高,说明最常见。设计算法,把最常见的100个名字及其重复次数以降序列出。
(1) 请描述你解决这个问题的思路,可以用伪代码作答
(2) 请给出主要的处理流程,算法以及算法复杂度。

你可能感兴趣的:(数据结构,C++,c,算法,linux)