Java综合选择题查缺补漏(1)

1、mysql复制关系:

  • mysql支持master-slave复制,也支持master-master复制
  • 一般情况下,异步复制的性能比半同步复制好,但后者相对更为安全
  • 在有多个slave参与的半同步复制中,master并不一定需要等待全部slave返回
小结: mysql支持双主复制。同时建议使用row格式,比较少使用statement格式。

2、对于根元素为最小值的二叉堆:

删除最小元素的复杂度是o(logn);
------删除最小元素之后不需要继续调整堆使其保持堆的性质吗?调整堆的O(lg n)的时间复杂度也得算在删除操作里面。
查询最小元素的复杂度是o(1);
合并两个堆有两种思路:1. 将一个堆的元素一个个插入另一个堆, O(n1 lgn2);2. 直接复制另个堆的元素重建堆,O(n1 +n2 ), 因为建一个最大堆的时间复杂度为O(n)。所以合并两个堆的复杂度不可能是O(lgn)。
 3、 
有个长度为 
12 
的无重复有序表,按折半查找法进行查找,在表内各元素等概率情况下,查找成功所需的平均比较(三元比较)的次数为(): 

此题按照一颗完全二叉树来考虑,12个结点是4层,所以为(1*1+2*2+4*3+5*4)/12

4、在mysql中,以下哪种方式可以开启一个事务?

start transaction;begin

5、数据库

A  Mongodb数据属于文档型非关系数据库;
C  Redis属于KV键值数据库
D  Hbase属于列数据库
6、 有关Http协议的描述::
post请求一般用于修改服务器上的资源,对发送的消息数据量没有限制,通过表单方式提交;
可以通过206返回码实现断点续传;
HTTP1.1实现了持久连接和管线化操作以及主动通知功能,相比http1.0有大福性能提升.

7、ping在主机和服务器之间传递控制消息,属于ICMP协议,但是ICMP协议是TCP/IP的子协议。

8、有一个文件ip.txt,每行一条ip记录,共若干行,下面哪个命令可以实现“统计出现次数最多的前3个ip及其次数”?

首先排序sort,相同的ip会排在一起,然后uniq -c 会去掉重复的ip,只有保留一条,同时记录重复数在行首,如: 3 ip1   \n    1 ip2   \n 2 ip3,再按照数字反向排序即可sort -nr,-n是按照数字,-r是降序,最好 head -n 3取出前三个即可。

sort ip.txt | uniq -c | sort -rn | head -n 3
 
9、大小为MAX的循环队列中,f为当前对头元素位置,r为当前队尾元素位置(最后一个元素的位置),则任意时刻,队列中的元素个数为:
(r-f+MAX+1)%MAX。
【这一题有点陷阱】我来解释下为什么是B而不是D
教材上说的 (也是大家记住的)求队列公式为: (rear-front+Max)%Max
该公式中的  rear指向队尾元素的下一个位置 ,而本题中  r    向队尾元素位置。
举例子:一个总长为10的循坏队列,在某一时刻其 头front=4,尾rear=7有4/5/6三个元素
这时往里面加五个元素,没有出列,就会变成 front=4,rear=2有4/5/6/7/8/9/0/1八个元素
那么取r-f+1长度就不对了,(2-4+10)%10=8,才是对的。

小结:如果不是循环队列的话,那么队列中的元素显然是rear-front+1;因为是循环队列,即队尾元素的索引有可能比队头元素要小,所以结果就是(rear-front+1+MAX)%MAX.

10\程序员小李通过管道统计prog.c函数中for语句通过的次数,需要使用的指令分别是:

grep
wc
Linux系统中的wc   (Word Count)   命令的功能为统计指定文件中的字节数、字数、行数,并将统计结果显示输出。

grep “for”  proc.c  | wc -l 

11、在一个10阶的B-树上,每个树根结点中所含的关键字数目最多允许为( )个,最少允许为( )个。

最多M-1  最少M/2-1 向上取整。


12、以下几条路由,10.1.193.0/24,10.1.194.0/24,10.1.196.0/24,10.1.198.0/24,如果进行路由汇聚,则能覆盖这几条路由地址的是()

193: 1100 0001
194: 1100 0010
196: 1100 0100
198: 1100 0110
这四个数的前五位都是11000,加上10.1这两部分相同的位数,网络号就是8+8+5=21
而1100 0000的十进制数是192. 所以路由汇聚的IP地址就是10.1.192.0/21

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值