微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用双射规则对偶数奇偶校验的二进制字符串进行计数

如何解决使用双射规则对偶数奇偶校验的二进制字符串进行计数

问题:

让B = {0,1}。 Bn是具有n位的二进制字符串的集合。将集合En定义为具有n个偶数个1的二进制字符串的集合。请注意,零是偶数,因此具有零1的字符串(即全为0的字符串)的偶数为1。

(a) 显示B ^ 9与E ^ 10之间的双射。解释为什么您的功能是双射的。

(b) 什么是| E ^ 10 |?

我很难找到一个满足集合且是双射的解决方案。我该如何解决这个问题。

与案件有关吗?例如,如果B ^ 9的偶数为1,则加0;如果奇数的整数为B,则加1以获得E ^ 10?

谢谢!

解决方法

(a) E^10 中的每个字符串都以长度为 9 的前缀开头,该前缀也是 B^9 的成员。给定长度为 9 的前缀,最后一位是唯一确定的,因为它要么必须是 0(如果前缀也在 E^9 中)或者它必须是 1(如果前缀不在 E^9 中)。因此,对于 E^10 的每个元素,B^9 中正好有一个元素被唯一映射到。类似地,对于 B^9 中的任何元素,可以通过在 B^9 中的元素末尾添加 0 或 1(选择导致奇偶校验的那个)来唯一地形成 E^10 的元素。此操作 - 附加 0 或 1 以创建奇偶校验 - 将 B^9 的每个元素映射到 E^10 的唯一元素。因为从所有 E^10 到 B^9,以及从所有 B^9 到 E^10 都有一个唯一的映射,所以我们有我们的双射。

(b) 因为B^9和E^10之间存在双射,我们知道|E^10| = |B^9|。但是|B^9| = 2^9,因为对于 B^9 中任何字符串的九个位置中的每一个,我们都可以独立地为该位选择两个值之一。因此,|E^10| = 2^9 也是。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。