Расстояние Хэмминга — различия между версиями
Whiplash (обсуждение | вклад) |
Whiplash (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
{{Определение | {{Определение | ||
|definition= | |definition= | ||
− | '''Расстояние Хэмминга (Hamming distance)''' {{---}} число позиций, в которых соответствующие | + | '''Расстояние Хэмминга (Hamming distance)''' {{---}} число позиций, в которых соответствующие символы двух строк одинаковой длины различны. }} |
В более общем случае расстояние Хэмминга применяется для строк одинаковой длины любых k-ичных алфавитов и служит [[Метрическое пространство#def1 | метрикой]] различия (функцией, определяющей расстояние в метрическом пространстве) объектов одинаковой размерности. | В более общем случае расстояние Хэмминга применяется для строк одинаковой длины любых k-ичных алфавитов и служит [[Метрическое пространство#def1 | метрикой]] различия (функцией, определяющей расстояние в метрическом пространстве) объектов одинаковой размерности. | ||
[[Файл:Hamming.JPG|thumb|180px|3-битный бинарный куб для нахождения расстояния Хэмминга]] | [[Файл:Hamming.JPG|thumb|180px|3-битный бинарный куб для нахождения расстояния Хэмминга]] | ||
Строка 20: | Строка 20: | ||
{{Утверждение | {{Утверждение | ||
|statement=<tex>~d(x,y) \le d(x,z) + d(z,y)</tex> | |statement=<tex>~d(x,y) \le d(x,z) + d(z,y)</tex> | ||
− | |proof=I. Все позиции независимы. | + | |proof='''Доказательство №1''' |
+ | |||
+ | Пусть слова <tex>x</tex> и <tex>y</tex> отличаются в некоторых позициях. Тогда какое бы слово <tex>z</tex> мы ни взяли, оно будет отличаться в каждой из этих позиций по крайне мере от одного из слов <tex>x</tex> и <tex>y</tex>. Следовательно, суммируя в правой части <tex>d(x, z)</tex> и <tex>d(z, y)</tex>, мы обязательно учтем все позиции, в которых различались слова <tex>x</tex> и <tex>y</tex>. Т.е. получается, что <tex>~d(x,y) \le d(x,z) + d(z,y)</tex>. | ||
+ | |||
+ | |||
+ | '''Доказательство №2 (с помощью математической индукции)''' | ||
+ | |||
+ | I. Все позиции независимы. | ||
II. Рассмотрим два варианта, когда <tex>x = y</tex> (1) и <tex>x \ne y</tex> (2): | II. Рассмотрим два варианта, когда <tex>x = y</tex> (1) и <tex>x \ne y</tex> (2): |
Версия 04:29, 15 декабря 2011
Определение: |
Расстояние Хэмминга (Hamming distance) — число позиций, в которых соответствующие символы двух строк одинаковой длины различны. |
В более общем случае расстояние Хэмминга применяется для строк одинаковой длины любых k-ичных алфавитов и служит метрикой различия (функцией, определяющей расстояние в метрическом пространстве) объектов одинаковой размерности.
Пример
Свойства
Расстояние Хэмминга обладает свойствами метрики, так как удовлетворяет ее определению.
- (Если расстояние от до равно нулю, то и совпадают ( ))
- (Объект удален от объекта так же, как объект удален от объекта )
- (Расстояние от до всегда меньше или равно расстоянию от до через точку (равенство достигается только в том случае, если точка принадлежит отрезку ). Это свойство обычно называют неравенством треугольника за его естественную геометрическую аналогию: сумма двух сторон треугольника всегда больше третьей стороны.)
Доказательство неравенства треугольника
Утверждение: |
Доказательство №1 Пусть слова и отличаются в некоторых позициях. Тогда какое бы слово мы ни взяли, оно будет отличаться в каждой из этих позиций по крайне мере от одного из слов и . Следовательно, суммируя в правой части и , мы обязательно учтем все позиции, в которых различались слова и . Т.е. получается, что .
I. Все позиции независимы. II. Рассмотрим два варианта, когда (1) и (2):
а) База индукции: Пусть слова и отличаются в некоторой позиции. Тогда какое бы слово мы не взяли оно будет отличатся хотя бы от одного из слов или . А это означает, что неравенство выполняется.б) Пусть неравенство Индуктивное предположение верно, значит, неравенство выполняется при . Докажем, что оно верно для . Для позиций из общее количество отличий слова от и слова от , благодаря предположению , не меньше, чем количество отличий слова от . Рассмотрим оставшуюся позицию, в которой отличаются слова и . Так как какое бы слово мы не взяли оно, в этой позиции, будет отличатся хотя бы от одного из слов или , то неравенство для выполняется. выполняется для любого натурального ( — количество отличий слова от ). |