Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
15
Добавлен:
10.12.2013
Размер:
15.91 Кб
Скачать
ѓ« ў  11. ЏаҐ¤бв ў«Ґ­ЁҐ ¬­®¦Ґбвў. •ҐиЁа®ў ­ЁҐ.

11.1. •ҐиЁа®ў ­ЁҐ б ®вЄалв®©  ¤аҐб жЁҐ©

‚ ЇаҐ¤л¤г饩 Ј« ўҐ Ўл«® ­ҐбЄ®«мЄ® ЇаҐ¤бв ў«Ґ­Ё© ¤«п ¬­®-
¦Ґбвў, н«Ґ¬Ґ­в ¬Ё Є®в®але пў«повбп жҐ«лҐ зЁб«  Їа®Ё§ў®«м­®© ўҐ-
«ЁзЁ­л. Ћ¤­ Є® ў «оЎ®¬ Ё§ ­Ёе е®вп Ўл ®¤­  Ё§ ®ЇҐа жЁ© Їа®ўҐаЄЁ
ЇаЁ­ ¤«Ґ¦­®бвЁ, ¤®Ў ў«Ґ­Ёп Ё г¤ «Ґ­Ёп н«Ґ¬Ґ­в  вॡ®ў «  Є®«Ё-
зҐбвў  ¤Ґ©бвўЁ©, Їа®Ї®ажЁ®­ «м­®Ј® зЁб«г н«Ґ¬Ґ­в®ў ¬­®¦Ґбвў . Ќ 
Їа ЄвЁЄҐ нв® Ўлў Ґв б«ЁиЄ®¬ ¬­®Ј®. ‘гйҐбвўгов бЇ®б®Ўл, Ї®§ў®«п-
ойЁҐ Ї®«гзЁвм ¤«п ўбҐе ваҐе гЇ®¬п­гвле ®ЇҐа жЁ© ®жҐ­Єг C*log n.
Ћ¤Ё­ Ё§ в ЄЁе бЇ®б®Ў®ў ¬л а бᬮваЁ¬ ў б«Ґ¤го饩 Ј« ўҐ. ‚ нв®©
Ј« ўҐ ¬л а §ЎҐаҐ¬ бЇ®б®Ў, Є®в®алҐ е®вп Ё ЇаЁў®¤Ёв Є C*n ¤Ґ©бвўЁ-
п¬ ў ег¤иҐ¬ б«гз Ґ, ­® § в® "ў б।­Ґ¬" вॡгҐв §­ зЁвҐ«м­®
¬Ґ­м襣® Ёе зЁб« . (Њл ­Ґ Ўг¤Ґ¬ гв®з­пвм б«®ў "ў б।­Ґ¬", е®вп
нв® Ё ¬®¦­® ᤥ« вм.) ќв®в бЇ®б®Ў ­ §лў Ґвбп еҐиЁа®ў ­ЁҐ¬.
Џгбвм ­ ¬ ­Ґ®Ўе®¤Ё¬® ЇаҐ¤бв ў«пвм ¬­®¦Ґбвў  н«Ґ¬Ґ­в®ў вЁЇ 
T, ЇаЁзҐ¬ зЁб«® н«Ґ¬Ґ­в®ў § ўҐ¤®¬® ¬Ґ­миҐ n. ‚롥६ ­ҐЄ®в®аго
дг­ЄжЁо h, ®ЇаҐ¤Ґ«Ґ­­го ­  §­ зҐ­Ёпе вЁЇ  T Ё ЇаЁ­Ё¬ ойго §­ зҐ-
­Ёп 0..(n-1). Ѓл«® Ўл е®а®и®, зв®Ўл нв  дг­ЄжЁп ЇаЁ­Ё¬ «  ­ 
н«Ґ¬Ґ­в е Ўг¤г饣® ¬­®¦Ґбвў  Ї® ў®§¬®¦­®бвЁ Ў®«ҐҐ а §­®®Ўа §­лҐ
§­ зҐ­Ёп. •г¤иЁ© б«гз © - нв® Є®Ј¤  ҐҐ §­ зҐ­Ёп ­  ўбҐе н«Ґ¬Ґ­-
в е еа ­Ё¬®Ј® ¬­®¦Ґбвў  ®¤Ё­ Є®ўл. ќвг дг­ЄжЁо Ўг¤Ґ¬ ­ §лў вм
еҐи-дг­ЄжЁҐ©.

‚ўҐ¤Ґ¬ ¤ў  ¬ ббЁў 

val: array [0..n-1] of T;
used: array [0..n-1] of boolean;

(¬л Ї®§ў®«пҐ¬ ᥡҐ ЇЁб вм n-1 ў Є зҐб⢥ Ја ­Ёжл ў ®ЇаҐ¤Ґ«Ґ­ЁЁ
вЁЇ , е®вп ў Ї бЄ «Ґ нв® ­Ґ а §аҐи Ґвбп). ‚ нвЁе ¬ ббЁў е Ўг¤гв
еа ­Ёвмбп н«Ґ¬Ґ­вл ¬­®¦Ґбвў : ®­® а ў­® ¬­®¦Ґбвўг ўбҐе val [i]
¤«п вҐе i, ¤«п Є®в®але used [i], ЇаЁзҐ¬ ўбҐ нвЁ val [i] а §«Ёз-
­л. Џ® ў®§¬®¦­®бвЁ ¬л Ўг¤Ґ¬ еа ­Ёвм н«Ґ¬Ґ­в t ­  ¬Ґб⥠h(t),
бзЁв п нв® ¬Ґбв® "ЁбЄ®­­л¬" ¤«п н«Ґ¬Ґ­в  t. Ћ¤­ Є® ¬®¦Ґв б«г-
зЁвмбп в Є, зв® ­®ўл© н«Ґ¬Ґ­в, Є®в®ал© ¬л е®вЁ¬ ¤®Ў ўЁвм, ЇаҐ-
⥭¤гҐв ­  㦥 § ­п⮥ ¬Ґбв® (¤«п Є®в®а®Ј® used ЁбвЁ­­®). ‚ н⮬
б«гз Ґ ¬л ®вл饬 Ў«Ё¦ ©иҐҐ бЇа ў  бў®Ў®¤­®Ґ ¬Ґбв® Ё § ЇЁиҐ¬ н«Ґ-
¬Ґ­в вг¤ . ("‘Їа ў " §­ зЁв "ў бв®а®­г 㢥«ЁзҐ­Ёп Ё­¤ҐЄб®ў";
¤®©¤п ¤® Єа п, ¬л ЇҐаҐбЄ ЄЁў Ґ¬ ў ­ з «®.) Џ® ЇаҐ¤Ї®«®¦Ґ­Ёо,
зЁб«® н«Ґ¬Ґ­в®ў ўбҐЈ¤  ¬Ґ­миҐ n, в Є зв® ЇгбвлҐ ¬Ґбв  Ј а ­вЁа®-
ў ­­® Ўг¤гв.
”®а¬ «м­® Ј®ў®ап, ў «оЎ®© ¬®¬Ґ­в ¤®«¦­® б®Ў«о¤ вмбп в Є®Ґ
вॡ®ў ­ЁҐ: ¤«п «оЎ®Ј® н«Ґ¬Ґ­в  ¬­®¦Ґбвў  гз бв®Є бЇа ў  ®в ҐЈ®
ЁбЄ®­­®Ј® ¬Ґбв  ¤® ҐЈ® д ЄвЁзҐбЄ®Ј® ¬Ґбв  Ї®«­®бвмо § Ї®«­Ґ­.
Ѓ« Ј®¤ ап н⮬㠯஢ҐаЄ  ЇаЁ­ ¤«Ґ¦­®бвЁ § ¤ ­­®Ј® н«Ґ¬Ґ­в 
t ®бгйҐбвў«пҐвбп «ҐЈЄ®: ўбв ў ­  h(t), ¤ўЁЈ Ґ¬бп ­ Їа ў®, Ї®Є 
­Ґ ¤®©¤Ґ¬ ¤® Їгбв®Ј® ¬Ґбв  Ё«Ё ¤® н«Ґ¬Ґ­в  t. ‚ ЇҐаў®¬ б«гз Ґ
н«Ґ¬Ґ­в t ®вбгвбвўгҐв ў ¬­®¦Ґб⢥, ў® ўв®а®¬ ЇаЁбгвбвўгҐв. …б«Ё
н«Ґ¬Ґ­в ®вбгвбвўгҐв, в® ҐЈ® ¬®¦­® ¤®Ў ўЁвм ­  ­ ©¤Ґ­­®Ґ Їгб⮥
¬Ґбв®. …б«Ё ЇаЁбгвбвўгҐв, в® ¬®¦­® ҐЈ® г¤ «Ёвм (Ї®«®¦Ёў used =
false).

11.1.1. ‚ ЇаҐ¤л¤г饬  Ў§ жҐ Ґбвм ®иЁЎЄ . Ќ ©¤ЁвҐ ҐҐ Ё
ЁбЇа ўмвҐ.

ђҐиҐ­ЁҐ. „Ґ«® ў ⮬, зв® ЇаЁ г¤ «Ґ­ЁЁ вॡ㥬®Ґ бў®©бвў®
"®вбгвбвўЁп Їгбв®в" ¬®¦Ґв ­ агиЁвмбп. Џ®н⮬㠡㤥¬ ¤Ґ« вм в Є.
‘®§¤ ў ¤лаг, Ўг¤Ґ¬ ¤ўЁЈ вмбп ­ Їа ў®, Ї®Є  ­Ґ ­ в®«Є­Ґ¬бп ­  ҐйҐ
®¤­® Їгб⮥ ¬Ґбв® (в®Ј¤  ­  н⮬ ¬®¦­® гбЇ®Є®Ёвмбп) Ё«Ё ­  н«Ґ-
¬Ґ­в, бв®пйЁ© ­Ґ ­  ЁбЄ®­­®¬ ¬ҐбвҐ. ‚® ўв®а®¬ б«гз Ґ Ї®б¬®ваЁ¬,
­Ґ ­г¦­® «Ё нв®в н«Ґ¬Ґ­в Ї®бв ўЁвм ­  ¬Ґбв® ¤лал. …б«Ё ­Ґв, в®
Їа®¤®«¦ Ґ¬ Ї®ЁбЄ, Ґб«Ё ¤ , в® § влЄ Ґ¬ Ё¬ бв аго ¤лаг. ЏаЁ н⮬
®Ўа §гҐвбп ­®ў п ¤ла , б Є®в®а®© ¤Ґ« Ґ¬ ўбҐ в® ¦Ґ б ¬®Ґ.

11.1.2. Ќ ЇЁб вм Їа®Ја ¬¬л Їа®ўҐаЄЁ ЇаЁ­ ¤«Ґ¦­®бвЁ, ¤®Ў ў-
«Ґ­Ёп Ё г¤ «Ґ­Ёп.

ђҐиҐ­ЁҐ.
function ЇаЁ­ ¤«Ґ¦Ёв (t: T): boolean;
| var i: integer;
begin
| i := h (t);
| while used [i] and (val [i] <> t) do begin
| | i := (i + 1) mod n;
| end; {not used [i] or (val [i] = t)}
| belong := used [i] and (val [i] = t);
end;

procedure ¤®Ў ўЁвм (t: T);
| var i: integer;
begin
| i := h (t);
| while used [i] and (val [i] <> t) do begin
| | i := (i + 1) mod n;
| end; {not used [i] or (val [i] = t)}
| if not used [i] then begin
| | used [i] := true;
| | val [i] := t;
| end;
end;

procedure ЁбЄ«озЁвм (t: T);
| var i, gap: integer;
begin
| i := h (t);
| while used [i] and (val [i] <> t) do begin
| | i := (i + 1) mod n;
| end; {not used [i] or (val [i] = t)}
| if used [i] and (val [i] = t) then begin
| | used [i] := false;
| | gap := i;
| | i := (i + 1) mod n;
| | while used [i] do begin
| | | if i = h (val[i]) then begin
| | | | i := (i + 1) mod n;
| | | end else if dist(h(val[i]),i) < dist(gap,i) then begin
| | | | i := (i + 1) mod n;
| | | end else begin
| | | | used [gap] := true;
| | | | val [gap] := val [i];
| | | | used [i] := false;
| | | | gap := i;
| | | | i := i + 1;
| | | end;
| | end;
| end;
end;

‡¤Ґбм dist (a, b) - Ё§¬ҐаҐ­­®Ґ Ї® з б®ў®© бв५ЄҐ (б«Ґў 
­ Їа ў®) а ббв®п­ЁҐ ®в a ¤® b, в.Ґ.

dist (a,b) = (b - a + n) mod n.

(Њл ЇаЁЎ ўЁ«Ё n, в Є Є Є дг­ЄжЁп mod Їа ўЁ«м­® а Ў®в Ґв в®«мЄ®
ЇаЁ Ї®«®¦ЁвҐ«м­®¬ ¤Ґ«Ё¬®¬.)

11.1.3. ‘гйҐбвўгҐв ¬­®Ј® ў аЁ ­в®ў еҐиЁа®ў ­Ёп. Ћ¤Ё­ Ё§ ­Ёе
в Є®ў: ®Ў­ аг¦Ёў, зв® ЁбЄ®­­®Ґ ¬Ґбв® (®Ў®§­ зЁ¬ ҐЈ® i) § ­пв®,
Ўг¤Ґ¬ ЁбЄ вм бў®Ў®¤­®Ґ ­Ґ б।Ё i+1, i+2,...,   б।Ё r(i),
r(r(i)), r(r(r(i))),..., Ј¤Ґ r - ­ҐЄ®в®а®Ґ ®в®Ўа ¦Ґ­ЁҐ 0..n-1 ў
ᥡп. Љ ЄЁҐ ЇаЁ н⮬ Ўг¤гв ваг¤­®бвЁ?

ЋвўҐв. (1) ЌҐ Ј а ­вЁагҐвбп, зв® Ґб«Ё ЇгбвлҐ ¬Ґбв  Ґбвм, в®
¬л Ёе ­ ©¤Ґ¬. (2) ЏаЁ г¤ «Ґ­ЁЁ ­Ґпб­®, Є Є § Ї®«­пвм ¤лал. (Ќ 
Їа ЄвЁЄҐ ў® ¬­®ЈЁе б«гз пе г¤ «Ґ­ЁҐ ­Ґ ­г¦­®, в Є зв® в Є®© бЇ®-
б®Ў в Є¦Ґ ЇаЁ¬Ґ­пҐвбп. ‘зЁв Ґвбп, зв® г¤ з­л© Ї®¤Ў®а r ¬®¦Ґв
ЇаҐ¤®вўа вЁвм ®Ўа §®ў ­ЁҐ "бЄ®Ї«Ґ­Ё©" § ­пвле п祥Є.)

11.1.4. Џгбвм ¤«п еа ­Ґ­Ёп ¬­®¦Ґбвў  ўбҐе Їа ўЁ«м­ле
агббЄЁе б«®ў ў Їа®Ја ¬¬Ґ ®ад®Ја дЁЁ ЁбЇ®«м§гҐвбп еҐиЁа®ў ­ЁҐ.
—в® ­г¦­® ¤®Ў ўЁвм, зв®Ўл Є ⮬㠦Ґ 㬥вм ­ е®¤Ёвм  ­Ј«Ё©бЄЁ©
ЇҐаҐў®¤ «оЎ®Ј® Їа ўЁ«м­®Ј® б«®ў ?

ђҐиҐ­ЁҐ. Џ®¬Ё¬® ¬ ббЁў  val, н«Ґ¬Ґ­вл Є®в®а®Ј® пў«повбп
агббЄЁ¬Ё б«®ў ¬Ё, ­г¦Ґ­ Ї а ««Ґ«м­л© ¬ ббЁў Ёе  ­Ј«Ё©бЄЁе ЇҐаҐ-
ў®¤®ў.

11.2. •ҐиЁа®ў ­ЁҐ б® бЇЁбЄ ¬Ё

Ќ  еҐи-дг­ЄжЁо б m §­ зҐ­Ёп¬Ё ¬®¦­® ᬮваҐвм Є Є ­  бЇ®б®Ў
ᢥбвЁ ў®Їа®б ® еа ­Ґ­ЁЁ ®¤­®Ј® Ў®«ми®Ј® ¬­®¦Ґбвў  Є ў®Їа®бг ®
еа ­Ґ­ЁЁ ­ҐбЄ®«мЄЁе ¬Ґ­миЁ¬. €¬Ґ­­®, Ґб«Ё г ­ б Ґбвм еҐи-дг­ЄжЁп
б m §­ зҐ­Ёп¬Ё, в® «оЎ®Ґ ¬­®¦Ґбвў® а §ЎЁў Ґвбп ­  m Ї®¤¬­®¦Ґбвў
(ў®§¬®¦­®, Їгбвле), ᮮ⢥вбвўгойЁе ў®§¬®¦­ле §­ зҐ­Ёп¬
ени-дг­ЄжЁЁ. ‚®Їа®б ® Їа®ўҐаЄҐ ЇаЁ­ ¤«Ґ¦­®бвЁ, ¤®Ў ў«Ґ­ЁЁ Ё«Ё
г¤ «Ґ­ЁЁ ¤«п Ў®«ми®Ј® ¬­®¦Ґбвў  бў®¤Ёвбп Є в Є®¬г ¦Ґ ў®Їа®бг ¤«п
®¤­®Ј® Ё§ ¬Ґ­миЁе (зв®Ўл г§­ вм, ¤«п Є Є®Ј®, ­ ¤® Ї®б¬®ваҐвм ­ 
§­ зҐ­ЁҐ еҐи-дг­ЄжЁЁ).

‚ ЇаЁ­жЁЇҐ, нвЁ ¬Ґ­миЁҐ ¬­®¦Ґбвў  ¬®Јгв еа ­Ёвмбп «оЎл¬
бЇ®б®Ў®¬ (а § ®­Ё ¬ «л, нв® ­Ґ ®зҐ­м ў ¦­®), ­® 㤮Ў­® Ёе еа -
­Ёвм б Ї®¬®ймо ббл«®Є, Ї®бЄ®«мЄг ­ ¬ Ё§ўҐб⥭ Ёе б㬬 а­л© а §-
¬Ґа (а ў­л© зЁб«г н«Ґ¬Ґ­в®ў еҐиЁа㥬®Ј® ¬­®¦Ґбвў ). ‘«Ґ¤гой п
§ ¤ з  ЇаҐ¤« Ј Ґв ॠ«Ё§®ў вм нв®в Ї« ­.

11.2.1. Џгбвм еҐи-дг­ЄжЁп ЇаЁ­Ё¬ Ґв §­ зҐ­Ёп 1..k. „«п Є ¦-
¤®Ј® §­ зҐ­Ёп еҐи-дг­ЄжЁЁ а бᬮваЁ¬ бЇЁб®Є ўбҐе н«Ґ¬Ґ­в®ў ¬­®-
¦Ґбвў  б ¤ ­­л¬ §­ зҐ­ЁҐ¬ еҐи-дг­ЄжЁЁ. Ѓг¤Ґ¬ еа ­Ёвм нвЁ k бЇЁб-
Є®ў б Ї®¬®ймо ЇҐаҐ¬Ґ­­ле

‘®¤Ґа¦ ­ЁҐ: array [1..n] of T;
‘«Ґ¤гойЁ©: array [1..n] of 1..n;
ЏҐаў‘ў®Ў: 1..n;
‚ҐаиЁ­ : array [1..k] of 1..n;

в Є ¦Ґ, Є Є ¬л нв® ¤Ґ« «Ё ¤«п k б⥪®ў ®Ја ­ЁзҐ­­®© б㬬 а­®©
¤«Ё­л. Ќ ЇЁиЁвҐ ᮮ⢥вбвўгойЁҐ Їа®Ја ¬¬л. (’ҐЇҐам б г¤ «Ґ­ЁҐ¬
Ўг¤Ґв ¬Ґ­миҐ Їа®Ў«Ґ¬.)

ђҐиҐ­ЁҐ. ЏҐаҐ¤ ­ з «®¬ а Ў®вл ­ ¤® Ї®«®¦Ёвм ‚ҐаиЁ­ [i]=0
¤«п ўбҐе i=1..k, Ё бўп§ вм ўбҐ ¬Ґбв  ў бЇЁб®Є бў®Ў®¤­®Ј®
Їа®бва ­бвў , Ї®«®¦Ёў ЏҐаў‘ў®Ў=1 Ё ‘«Ґ¤гойЁ©[i]=i+1 ¤«п
i=1..n-1,   в Є¦Ґ ‘«Ґ¤гойЁ©[n]=0.

function ЇаЁ­ ¤«Ґ¦Ёв (t: T): boolean;
| var i: integer;
begin
| | i := ‚ҐаиЁ­ [h(t)];
| i := ‚ҐаиЁ­ [h(t)];
| {®бв «®бм ЁбЄ вм ў бЇЁбЄҐ, ­ зЁ­ п б i}
| while (i <> 0) and (‘®¤Ґа¦ ­ЁҐ[i] <> t) do begin
| | i := ‘«Ґ¤гойЁ©[i];
| end; {(i=0) or (‘®¤Ґа¦ ­ЁҐ [i] = t)}
| belong := ‘®¤Ґа¦ ­ЁҐ[i]=t;
end;

procedure ¤®Ў ўЁвм (t: T);
| var i: integer;
begin
| if not ЇаЁ­ ¤«Ґ¦Ёв(t) then begin
| | i := ЏҐаў‘ў®Ў;
| | {ЏҐаў‘ў®Ў <> 0 - бзЁв Ґ¬, зв® ­Ґ ЇҐаҐЇ®«­пҐвбп}
| | ЏҐаў‘ў®Ў := ‘«Ґ¤гойЁ©[ЏҐаў‘ў®Ў]
| | ‘®¤Ґа¦ ­ЁҐ[i]:=t;
| | ‘«Ґ¤гойЁ©[i]:=‚ҐаиЁ­ [h(t)];
| | ‚ҐаиЁ­ [h(t)]:=i;
| end;
end;

procedure ЁбЄ«озЁвм (t: T);
| var i, pred: integer;
begin
| i := ‚ҐаиЁ­ [h(t)]; pred := 0;
| {®бв «®бм ЁбЄ вм ў бЇЁбЄҐ, ­ зЁ­ п б i; pred -
| ЇаҐ¤л¤гйЁ©. Ґб«Ё ®­ Ґбвм, Ё 0, Ґб«Ё ­Ґв}
| while (i <> 0) and (‘®¤Ґа¦ ­ЁҐ[i] <> t) do begin
| | pred := i; i := ‘«Ґ¤гойЁ©[i];
| end; {(i=0) or (‘®¤Ґа¦ ­ЁҐ [i] = t)}
| if ‘®¤Ґа¦ ­ЁҐ[i]=t then begin
| | {н«Ґ¬Ґ­в Ґбвм, ­ ¤® г¤ «Ёвм}
| | if pred = 0 then begin
| | | {н«Ґ¬Ґ­в ®Є § «бп ЇҐаўл¬ ў бЇЁбЄҐ}
| | | ‚ҐаиЁ­ [h(t)] := ‘«Ґ¤гойЁ©[i];
| | end else begin
| | | ‘«Ґ¤гойЁ©[pred] := ‘«Ґ¤гойЁ©[i]
| | end;
| | {®бв «®бм ўҐа­гвм i ў бЇЁб®Є бў®Ў®¤­ле}
| | ‘«Ґ¤гойЁ©[i] := ЏҐаў‘ў®Ў;
| | ЏҐаў‘ў®Ў:=i;
| end;
end;

11.2.2. („«п §­ Є®¬ле б ⥮ਥ© ўҐа®пв­®б⥩.) Џгбвм
еҐи-дг­ЄжЁп б m §­ зҐ­Ёп¬Ё ЁбЇ®«м§гҐвбп ¤«п еа ­Ґ­Ёп ¬­®¦Ґбвў ,
ў Є®в®а®¬ ў ¤ ­­л© ¬®¬Ґ­в n н«Ґ¬Ґ­в®ў. „®Є § вм, зв® ¬ вҐ¬ вЁ-
зҐбЄ®Ґ ®¦Ё¤ ­ЁҐ зЁб«  ¤Ґ©бвўЁ© ў ЇаҐ¤л¤г饩 § ¤ зҐ ­Ґ ЇаҐў®бе®-
¤Ёв ‘*(1+n/m), Ґб«Ё ¤®Ў ў«пҐ¬л© (г¤ «пҐ¬л©, ЁбЄ®¬л©) н«Ґ¬Ґ­в t
ўлЎа ­ б«гз ©­®, ЇаЁзҐ¬ ўбҐ §­ зҐ­Ёп h(t) Ё¬Ґов а ў­лҐ ўҐа®пв-
­®бвЁ (а ў­лҐ 1/m).

ђҐиҐ­ЁҐ. …б«Ё l(i) - ¤«Ё­  бЇЁбЄ , ᮮ⢥вбвўго饣®
еҐи-§­ зҐ­Ёо i, в® зЁб«® ®ЇҐа жЁҐ© ­Ґ ЇаҐў®б室Ёв C*(1+l(h(i)));
гб।­пп, Ї®«гз Ґ¬ ЁбЄ®¬л© ®вўҐв, в Є Є Є б㬬  ўбҐе l(i) а ў­ 
n.

ќв  ®жҐ­Є  ®б­®ў ­  ­  ЇаҐ¤Ї®«®¦Ґ­ЁЁ ® а ў­ле ўҐа®пв­®бвпе.
Ћ¤­ Є® ў Є®­ЄаҐв­®© бЁвг жЁЁ ўбс ¬®¦Ґв Ўлвм ᮢᥬ ­Ґ в Є, Ё
§­ зҐ­Ёп еҐи-дг­ЄжЁЁ ¬®Јгв "бЄгзЁў вмбп": ¤«п Є ¦¤®© Є®­ЄаҐв­®©
еҐи-дг­ЄжЁЁ Ґбвм "­Ґг¤ з­лҐ" бЁвг жЁЁ, Є®Ј¤  зЁб«® ¤Ґ©бвўЁ© ®Є -
§лў Ґвбп Ў®«миЁ¬. ЏаЁс¬, ­ §лў Ґ¬л© "г­ЁўҐаб «м­л¬ еҐиЁа®ў ­Ё-
Ґ¬", Ї®§ў®«пҐв ®Ў®©вЁ нвг Їа®Ў«Ґ¬г. €¤Ґп б®бв®Ёв ў ⮬, зв® ЎҐ-
асвбп ᥬҐ©бвў® еҐи-дг­ЄжЁ©, ЇаЁзҐ¬ «оЎ п бЁвг жЁп ®Є §лў Ґвбп
­Ґг¤ з­®© «Ёим ¤«п ­ҐЎ®«ми®© з бвЁ нв®Ј® ᥬҐбвў .

Џгбвм H - ᥬҐ©бвў® дг­ЄжЁ©, Є ¦¤ п Ё§ Є®в®але ®в®Ўа ¦ Ґв
¬­®¦Ґбвў® T ў ¬­®¦Ґбвў® Ё§ n н«Ґ¬Ґ­в®ў (­ ЇаЁ¬Ґа, 0..n-1). ѓ®ў®-
апв, зв® H - г­ЁўҐаб «м­®Ґ ᥬҐ©бвў® еҐи-дг­ЄжЁ©, Ґб«Ё ¤«п «оЎле
¤ўге а §«Ёз­ле §­ зҐ­Ё© s Ё t Ё§ ¬­®¦Ґбвў  T ўҐа®пв­®бвм б®ЎлвЁп
"h(s)=h(t)" ¤«п б«гз ©­®© дг­ЄжЁЁ h Ё§ ᥬҐ©бвў  H а ў­  1/n.
(„агЈЁ¬Ё б«®ў ¬Ё, ⥠дг­ЄжЁЁ Ё§ H, ¤«п Є®в®але h(s)=h(t), б®б-
в ў«пов 1/n-го з бвм ўбҐе дг­ЄжЁ© ў H.)

‡ ¬Ґз ­ЁҐ. Ѓ®«ҐҐ бЁ«м­®Ґ вॡ®ў ­ЁҐ Є ᥬҐ©бвўг H ¬®Ј«® Ўл
б®бв®пвм ў ⮬, зв®Ўл ¤«п «оЎле ¤ўге а §«Ёз­ле н«Ґ¬Ґ­в®ў s Ё t
¬­®¦Ґбвў  T §­ зҐ­Ёп h(s) Ё h(t) б«гз ©­®© дг­ЄжЁЁ h пў«повбп
­Ґ§ ўЁбЁ¬л¬Ё б«гз ©­л¬Ё ўҐ«ЁзЁ­ ¬Ё, а ў­®¬Ґа­® а бЇаҐ¤Ґ«Ґ­­л¬Ё
­  0..n-1.

11.2.3. Џгбвм t[1]..t[u] - Їа®Ё§ў®«м­ п Ї®б«Ґ¤®ў вҐ«м­®бвм
а §«Ёз­ле н«Ґ¬Ґ­в®ў ¬­®¦Ґбвў  T. ђ бᬮваЁ¬ Є®«ЁзҐбвў® ¤Ґ©бвўЁ©,
Їа®Ёб室пйЁе ЇаЁ Ї®¬ҐйҐ­ЁЁ н«Ґ¬Ґ­в®ў t[1]..t[u] ў ¬­®¦Ґбвў®, еҐ-
иЁа㥬®Ґ б Ї®¬®ймо дг­ЄжЁЁ h Ё§ г­ЁўҐаб «м­®Ј® ᥬҐ©бвў  H. „®-
Є § вм, зв® б।­ҐҐ Є®«ЁзҐбвў® ¤Ґ©бвўЁ© (гб।­Ґ­ЁҐ - Ї® ўбҐ¬ h
Ё§ H) ­Ґ ЇаҐў®б室Ёв C*u*(1+u/n).

ђҐиҐ­ЁҐ. ЋЎ®§­ зЁ¬ зҐаҐ§ m[i] Є®«ЁзҐбвў® н«Ґ¬Ґ­в®ў Ї®б«Ґ¤®-
ў вҐ«м­®бвЁ, ¤«п Є®в®але еҐи-дг­ЄжЁп а ў­  i. (—Ёб« 
m[0]..m[n-1] § ўЁбпв, Є®­Ґз­®, ®в ўлЎ®а  еҐи-дг­ЄжЁЁ.) Љ®«Ё-
зҐбвў® ¤Ґ©бвўЁ©, Є®в®а®Ґ ¬л е®вЁ¬ ®жҐ­Ёвм, б в®з­®бвмо ¤® Ї®бв®-
п­­®Ј® ¬­®¦ЁвҐ«п а ў­® б㬬Ґ Єў ¤а в®ў зЁбҐ« m[0]..m[n-1]. (…б«Ё
k зЁбҐ« Ї®Ї ¤ ов ў ®¤­г еҐи-п祩Єг, в® ¤«п нв®Ј® вॡгҐвбп ЇаЁ-
¬Ґа­® 1+2+...+k ¤Ґ©бвўЁ©.) ќвг ¦Ґ б㬬㠪ў ¤а в®ў ¬®¦­® § ЇЁб вм
Є Є зЁб«® Ї а <p,q>, ¤«п Є®в®але h[t[p]]=h[t[q]]. Џ®б«Ґ¤­ҐҐ а -
ўҐ­бвў®, Ґб«Ё ҐЈ® а бб¬ ваЁў вм Є Є б®ЎлвЁҐ ЇаЁ дЁЄбЁа®ў ­­ле p
Ё q, Ё¬ҐҐв ўҐа®пв­®бвм 1/n ЇаЁ p<>q, Ї®н⮬г б।­ҐҐ §­ зҐ­ЁҐ
ᮮ⢥вбвўго饣® з«Ґ­  б㬬л а ў­® 1/n,   ¤«п ўбҐ© бг¬¬л Ї®«гз -
Ґ¬ ®жҐ­Єг Ї®ап¤Є  u*u/n,   в®з­ҐҐ u*u/n + u, Ґб«Ё гзҐбвм з«Ґ­л б
p=q.

ЋжҐ­Є  нв®© § ¤ зЁ Ї®Є §лў Ґв, зв® ў ­  Є ¦¤л© ¤®Ў ў«пҐ¬л©
н«Ґ¬Ґ­в ЇаЁе®¤Ёвбп ў б।­Ґ¬ C*(1+u/n) ®ЇҐа жЁ©. ‚ нв®© ®жҐ­ЄҐ
¤а®Ўм u/n Ё¬ҐҐв б¬лб« "Є®нддЁжЁҐ­в  § Ї®«­Ґ­Ёп" еҐи-в Ў«Ёжл.

11.2.4. „®Є § вм  ­ «®ЈЁз­®Ґ г⢥তҐ­ЁҐ ¤«п Їа®Ё§ў®«м­®©
Ї®б«Ґ¤®ў вҐ«м­®бвЁ ®ЇҐа жЁ© ¤®Ў ў«Ґ­Ёп, Ї®ЁбЄ  Ё г¤ «Ґ­Ёп (  ­Ґ
в®«мЄ® ¤«п ¤®Ў ў«Ґ­Ёп, Є Є ў ЇаҐ¤л¤г饩 § ¤ зҐ).

“Є § ­ЁҐ. Ѓг¤Ґ¬ ЇаҐ¤бв ў«пвм ᥡҐ, зв® ў 室Ґ Ї®ЁбЄ , ¤®-
Ў ў«Ґ­Ёп Ё г¤ «Ґ­Ёп н«Ґ¬Ґ­в Їа®в «ЄЁў Ґвбп Ї® бЇЁбЄг бў®Ёе Є®«-
«ҐЈ б ⥬ ¦Ґ еҐи-§­ зҐ­ЁҐ¬, Ї®Є  ­Ґ ­ ©¤Ґв бў®ҐЈ® ¤ў®©­ЁЄ  Ё«Ё
­Ґ ¤®©¤Ґв ¤® Є®­ж  бЇЁбЄ . Ѓг¤Ґ¬ ­ §лў вм i-j-бв®«Є­®ўҐ­ЁҐ¬
бв®«Є­®ўҐ­ЁҐ t[i] б t[j]. ЋЎйҐҐ зЁб«® ¤Ґ©бвўЁ© ЇаЁ¬Ґа­® а ў­®
зЁб«г ўбҐе бв®«Є­®ўҐ­Ё© Ї«об зЁб«® н«Ґ¬Ґ­в®ў. ЏаЁ t[i]<>t[j] ўҐ-
а®пв­®бвм i-j-бв®«Є­®ўҐ­Ёп а ў­  1/n. Ћбв «®бм Їа®б«Ґ¤Ёвм § 
бв®«Є­®ўҐ­Ёп¬Ё ¬Ґ¦¤г а ў­л¬Ё н«Ґ¬Ґ­в ¬Ё. ”ЁЄбЁа㥬 ­ҐЄ®в®а®Ґ
§­ зҐ­ЁҐ x Ё§ ¬­®¦Ґбвў  T Ё Ї®б¬®ваЁ¬ ­  бўп§ ­­лҐ б ­Ё¬ ®ЇҐа -
жЁЁ. Ћ­Ё Ё¤гв Ї® жЁЄ«г: ¤®Ў ў«Ґ­ЁҐ - Їа®ўҐаЄЁ - г¤ «Ґ­ЁҐ - ¤®-
Ў ў«Ґ­ЁҐ - Їа®ўҐаЄЁ - г¤ «Ґ­ЁҐ - ... ‘в®«Є­®ўҐ­Ёп ¬Ґ¦¤г ­Ё¬Ё
Їа®Ёб室пв ¬Ґ¦¤г ¤®Ў ў«пҐ¬л¬ н«Ґ¬Ґ­в®¬ Ё б«Ґ¤гойЁ¬Ё §  ­Ё¬ Їа®-
ўҐаЄ ¬Ё (¤® г¤ «Ґ­Ёп ўЄ«озЁвҐ«м­®), Ї®н⮬㠮ЎйҐҐ Ёе зЁб«® ­Ґ
ЇаҐў®б室Ёв зЁб«  н«Ґ¬Ґ­в®ў, а ў­ле x.

’ҐЇҐам ЇаЁўҐ¤Ґ¬ ЇаЁ¬Ґал г­ЁўҐаб «м­ле ᥬҐ©бвў. ЋзҐўЁ¤­®,
¤«п «оЎле Є®­Ґз­ле ¬­®¦Ґбвў A Ё B ᥬҐ©бвў® ўбҐе дг­ЄжЁ©, ®в®Ў-
а ¦ ойЁе A ў B, пў«пҐвбп г­ЁўҐаб «м­л¬. Ћ¤­ Є® нв®в ЇаЁ¬Ґа б
Їа ЄвЁзҐбЄ®© в®зЄЁ §аҐ­Ёп ЎҐбЇ®«Ґ§Ґ­: ¤«п § Ї®¬Ё­ ­Ёп б«гз ©­®©
дг­ЄжЁЁ Ё§ нв®Ј® ᥬҐ©бвў  ­г¦Ґ­ ¬ ббЁў, зЁб«® н«Ґ¬Ґ­в®ў ў Є®в®-
஬ а ў­® зЁб«г н«Ґ¬Ґ­в®ў ў ¬­®¦Ґб⢥ A. (Ђ Ґб«Ё ¬л ¬®¦Ґ¬ ᥡҐ
Ї®§ў®«Ёвм в Є®© ¬ ббЁў, в® ­ЁЄ Є®Ј® еҐиЁа®ў ­Ёп ­ ¬ ­Ґ вॡгҐв-
бп!)

Ѓ®«ҐҐ Їа ЄвЁз­лҐ ЇаЁ¬Ґал г­ЁўҐаб «м­ле ᥬҐ©бвў ¬®Јгв Ўлвм
Ї®бв஥­л б Ї®¬®ймо ­Ґб«®¦­ле  «ЈҐЎа ЁзҐбЄЁе Є®­бвагЄжЁ©. —ҐаҐ§
Z[p] ¬л ®Ў®§­ з Ґ¬ ¬­®¦Ґбвў® ўлзҐв®ў Ї® Їа®б⮬㠬®¤г«о p, в.Ґ.
{0,1,...,p-1};  аЁд¬ҐвЁзҐбЄЁҐ ®ЇҐа жЁЁ ў н⮬ ¬­®¦Ґб⢥ ўлЇ®«­п-
овбп Ї® ¬®¤г«о p. “­ЁўҐаб «м­®Ґ ᥬҐ©бвў® ®Ўа §го⠢ᥠ«Ё­Ґ©­лҐ
дг­ЄжЁ®­ «л ­  Z[p] ў б⥯Ґ­Ё n б® §­ зҐ­Ёп¬Ё ў Z[p]. Ѓ®«ҐҐ Ї®¤-
а®Ў­®, Їгбвм a[1],...,a[n] - Їа®Ё§ў®«м­лҐ н«Ґ¬Ґ­вл Z[p];
а бᬮваЁ¬ ®в®Ўа ¦Ґ­ЁҐ

h: <x[1]...x[n]> |-> a[1]x{1]+...+a{n]z[n]

Њл Ї®«гз Ґ¬ ᥬҐ©бвў® Ё§ (p ў б⥯Ґ­Ё n) ®в®Ўа ¦Ґ­Ё©, Ї а ¬ҐваЁ-
§®ў ­­®Ґ ­ Ў®а ¬Ё a[1]...a[n].

11.2.5. „®Є § вм, зв® н⮠ᥬҐ©бвў® пў«пҐвбп г­ЁўҐаб «м­л¬.

“Є § ­ЁҐ. Џгбвм x Ё y - а §«Ёз­лҐ в®зЄЁ Їа®бва ­бвў  Z[p] ў
б⥯Ґ­Ё n. Љ Є®ў  ўҐа®пв­®бвм в®Ј®, зв® б«гз ©­л© дг­ЄжЁ®­ «
ЇаЁ­Ё¬ Ґв ­  ­Ёе ®¤Ё­ Є®ўлҐ §­ зҐ­Ёп? „агЈЁ¬Ё б«®ў ¬Ё, Є Є®ў 
ўҐа®пв­®бвм в®Ј®, зв® ®­ а ўҐ­ ­г«о ­  Ёе а §­®бвЁ x-y? ЋвўҐв
¤ Ґвбп в ЄЁ¬ г⢥তҐ­ЁҐ¬: Їгбвм u - ­Ґ­г«Ґў®© ўҐЄв®а; в®Ј¤  ўбҐ
§­ зҐ­Ёп б«гз ©­®Ј® дг­ЄжЁ®­ «  ­  ­Ґ¬ а ў­®ўҐа®пв­л.

‚ б«Ґ¤го饩 § ¤ зҐ ¬­®¦Ґбвў® B={0,1} а бб¬ ваЁў Ґвбп Є Є
¬­®¦Ґбвў® ўлзҐв®ў Ї® ¬®¤г«о 2.

11.2.6. ‘Ґ¬Ґ©бвў® ўбҐе «Ё­Ґ©­ле ®в®Ўа ¦Ґ­Ё© Ё§ (B ў б⥯Ґ­Ё
m) ў (B ў б⥯Ґ­Ё n) пў«пҐвбп г­ЁўҐаб «м­л¬.

ђ®¤б⢥­­лҐ Ё¤ҐЁ ­Ґ®¦Ё¤ ­­® ®Є §лў овбп Ї®«Ґ§­л¬Ё ў б«Ґ¤г-
о饩 бЁвг жЁЁ (а ббЄ § « „.‚ аб®­®д쥢). Џгбвм ¬л е®вЁ¬ ­ ЇЁб вм
Їа®Ја ¬¬г, Є®в®а п ®Ў­ аг¦Ёў «  (Ў®«миЁ­бвў®) ®ЇҐз в®Є ў ⥪бвҐ,
­® ­Ґ е®вЁ¬ еа ­Ёвм бЇЁб®Є ўбҐе Їа ўЁ«м­ле б«®ў®д®а¬. ЏаҐ¤« Ј -
Ґвбп Ї®бвгЇЁвм в Є: ўлЎа вм ­ҐЄ®в®а®Ґ N Ё ­ Ў®а дг­ЄжЁ©
f[1],...,f[k], ®в®Ўа ¦ ойЁе агббЄЁҐ б«®ў  ў 1..N. ‚ ¬ ббЁўҐ Ё§ N
ЎЁв®ў Ї®«®¦Ё¬ ўбҐ ЎЁвл а ў­л¬Ё ­г«о, Єа®¬Ґ вҐе, Є®в®алҐ пў«повбп
§­ зҐ­ЁҐ¬ Є Є®©-в® дг­ЄжЁЁ ­ Ў®а  ­  Є Є®©-в® Їа ўЁ«м­®© б«®ў®-
д®а¬Ґ. ’ҐЇҐам ЇаЁЎ«Ё¦с­­л© вҐбв ­  Їа ўЁ«м­®бвм б«®ў®д®а¬л в -
Є®ў: Їа®ўҐаЁвм, зв® §­ зҐ­Ёп ўбҐе дг­ЄжЁ© ­ Ў®а  ­  нв®© б«®ў®-
д®а¬Ґ Ї®Ї ¤ ов ­  ¬Ґбв , § ­пвлҐ Ґ¤Ё­Ёж ¬Ё.
Соседние файлы в папке Шень