2016-01-25 7 views
-1

Я работаю над персональным алгоритмом согласования строк, основанным на наблюдении за другими такими алгоритмами. Следующий код из скрипта, реализующего алгоритм бита, и я пытаюсь понять синтаксис, в процессе создания таблицы состояния/таблицы, которая будет определять сходство между «строкой» и «сторой сена».Понимание битового алгоритма

letterPositionInNeedle = 0 
for symbol in needle: 
    letterPositionInNeedle = letterPositionInNeedle << 1 # what is this line supposed to do? 

Я понимаю процесс создания таблицы для оценки сходства, но символ «< <» сбивает с толку меня. Предполагается ли она итерировать длину «letterPositionInNeedle»?

+0

10 << 1 = 100 .. его смещение бит, составляющее два бита в три бита (для этого примера) – solti

ответ

0
letterPositionInNeedle = letterPositionInNeedle << 1 

бит смещается влево. Логически то, что равно

letterPositionInNeedle = letterPositionInNeedle * 2 
Смежные вопросы