模拟整理

关于编译原理,以下文法中,是自顶向下分析的文法是哪几个?()

LR(0)  SLR(1)  LALR(1)  LR(1)  LL(1)

答案: LL(1)    

 

网络协议的分类

数据链路层协议:PPP ARP MAC IEEE802.3

网络层协议:IP BGMP

传输层协议:TCP UDP

应用层协议:HTTP HTTPS FTP Telnet SMTP

 

进程间通信的方式——信号、管道、消息队列、共享内存

 

设哈希表长m=14,哈希函数H(key)=key%11。表中已有4个结点:addr(15)=4,addr(38)=5,addr(61)=6,addr(84)=7,其余地址为空。如果用二次探测再散列处理冲突,关键字为49的结点的地址是

参考答案 9 

解析 

插入前15,38,61,84的H(key)分别为:4,5,6,7 存放地址为4,5,6,7       49的H(key)为5,发生冲突. 进行二次探测,二次探测探测的是散列表,而不是在Hash值,也就是addr(n)=hash(n)+i^2 (i从0开始取),好像也有addr(n)=hash(n)±i^2 

addr(46) = 46%11+1= 6 冲突

addr(46) = 46%11+2^2= 9 不冲突  所以是9 

 

X=+0111001,Y=+1001101,求[X-Y]补= 

11101100

这题涉及一个补码 。 介绍一下原码,反码,补码 

首先要知道机器数和真值的概念 ,

机器数都是二进制的,有正负 ,由二进制的最高位表示,正为0,负为1

例如 +3 的机器数 00000011  -3的机器数 10000011

因为第一位是符号位,所以机器数的形式值就不等于真正的数值,

例如 0000 0001的真值 = +000 0001 = +1,1000 0001的真值 = –000 0001 = –1

 

原码 

原码就是符号位加上真值的绝对值, 即用第一位表示符号, 其余位表示值

[+1]原 = 0000 0001     [-1]原 = 1000 0001

反码

反码的表示方法是:正数的反码是其本身,负数的反码是在其原码的基础上, 符号位不变,其余各个位取反.

[+1] = [00000001]原 = [00000001]反

[-1] = [10000001]原 = [11111110]反

补码

补码的表示方法是:正数的补码就是其本身,负数的补码是在其原码的基础上, 符号位不变, 其余各位取反, 最后+1. (即在反码的基础上+1)

[+1] = [00000001]原 = [00000001]反 = [00000001]补

[-1] = [10000001]原 = [11111110]反 = [11111111]补

 

以数据集{1,6,8,2,9,4}为权值构造一棵赫夫曼树,其带权路径长度为___?

 

一颗完全二叉树的节点数量为666,那么这棵树上的叶子节点数为​​​​​​​___?

一般设度为零的节点为n0、度为1的节点为n1、度为2的节点为n2,那么有

n0+n1+n2 = 666

n0 = n2+1

n1 + 2*n2 = 665

因为完全二叉树度为1的节点数只能为0或1,所以n1=1

所以n0=333

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值