软考:中级软件设计师:校验码,汉明码纠错
提示:系列被面试官问的问题,我自己当时不会,所以下来自己复盘一下,认真学习和总结,以应对未来更多的可能性
关于互联网大厂的笔试面试,都是需要细心准备的
(1)自己的科研经历,科研内容,学习的相关领域知识,要熟悉熟透了
(2)自己的实习经历,做了什么内容,学习的领域知识,要熟悉熟透了
(3)除了科研,实习之外,平时自己关注的前沿知识,也不要落下,仔细了解,面试官很在乎你是否喜欢追进新科技,跟进创新概念和技术
(4)准备数据结构与算法,有笔试的大厂,第一关就是手撕代码做算法题
面试中,实际上,你准备数据结构与算法时以备不时之需,有足够的信心面对面试官可能问的算法题,很多情况下你的科研经历和实习经历足够跟面试官聊了,就不需要考你算法了。但很多大厂就会面试问你算法题,因此不论为了笔试面试,数据结构与算法必须熟悉熟透了
秋招提前批好多大厂不考笔试,直接面试,能否免笔试去面试,那就看你简历实力有多强了。
(5)考网警的大佬,务必把软考:中级软件设计师的内容学好学透,学广,学多
文章目录
- 软考:中级软件设计师:校验码,汉明码纠错
- @[TOC](文章目录)
- 软考:中级软件设计师:校验码,汉明码纠错
- 总结
文章目录
- 软考:中级软件设计师:校验码,汉明码纠错
- @[TOC](文章目录)
- 软考:中级软件设计师:校验码,汉明码纠错
- 总结
软考:中级软件设计师:校验码,汉明码纠错
认为通信链路是可靠的
因此,你错1位,咱们就能检错了
码距d需要e+1,这样才能检测e个位
e是检错的位数
t是纠错的位数,那d>=2t+1
这就是检错和纠错,懂了吧?
软考是经常考汉明码的编码,纠错的
r是校验位,冗余的个数
要求信息位L+r+1<=2的r次方
这就是2023年软考的真题,你得懂这个公式
信息位1011
我们要求校验位是啥
我们的校验位是放在2的r次方上的,所以其他就自然是信息位
看我们的1011是放在位置7653上的,我们把这几个数字,当做位置,拆分二进制数
他们分别是111,110,101,011
所以我们的r2怎么来?就看这个位置它最高位是不是1,是咱们就拿这个位置上的信息位来做异或
比如这里111,110,101,011高位都是1的,前面仨
也就是图中对应的I4,3,2,异或是101异或结果为0
比如这里111,110,101,011次高位都是1的,前面2个,后买那个
这几个位置对应I4,I3,I1,异或是101异或,结果为0
比如这里111,110,101,011最低位都是1的,后面的3
对应表中的位置是I4,2,1,结果111异或是1
【上面这个异或的过程很重要,它决定了r210各个位置到底放啥校验数字加粗样式】
因此校验位分别放001
这样整体就是
如果此时你收到了1011101
你看看能纠错吗?
还是按照上面的规则
你计算一下异或结果
把校验码跟这些相应的位置拿来做异或
结果就是3个数100
说明第4个位置发错了
它原本应该是0的,你现在发错了为1了,gg
懂了吗
这就是汉明码纠错的原理
由于4位置是校验位,不管,信息位没问题哦
不会你就看着课程链接:
软考课程
总结
提示:重要经验:
1)
2)
3)笔试求AC,可以不考虑空间复杂度,但是面试既要考虑时间复杂度最优,也要考虑空间复杂度最优。