代码修改技术全解析
在编码领域,若一个代码在某些方面表现出色,我们往往期望能从中找到相似且同样优秀的代码。本文将深入探讨一些修改代码以获取新代码的基本方法,同时会涉及广义里德 - 所罗门(GRS)码的特殊情况。
1. 六种基本技术
一个代码 $C$ 有三个基本参数:长度 $n$、维度 $k$ 以及冗余度 $r = n - k$。对于线性代码,这些参数都有自然的解释。下面介绍的六种基本修改技术虽不限于线性代码,但用线性代码的术语来描述会更直观。每种技术固定一个参数,并相应地增加或减少另外两个参数,具体如下:
- 增广(Augmenting) :固定 $n$,增加 $k$,减少 $r$。
- 删节(Expurgating) :固定 $n$,减少 $k$,增加 $r$。
- 扩展(Extending) :固定 $k$,增加 $n$,增加 $r$。
- 打孔(Puncturing) :固定 $k$,减少 $n$,减少 $r$。
- 加长(Lengthening) :固定 $r$,增加 $n$,增加 $k$。
- 缩短(Shortening) :固定 $r$,减少 $n$,减少 $k$。
这六种技术自然地分为三对,每对中的两个操作互为逆过程。由于代码的冗余度可看作其“对偶维度”,每种技术也都有自然的对偶技术。
1.1 增广和删节
增广或删节代码时,我们保持代码长度
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



