Wstęp do algorytmu Knutha‑Morrisa‑Pratta

Ważne!

Algorytm Knutha‑Morrisa‑Pratta wyszukiwania wzorca

Specyfikacja problemu:

Dane:

  • t – łańcuch znakowy

  • w – poszukiwany w łańcuchu t wzorzec

Wynik:

Wypisanie kolejnych wystąpień wzorca w łańcuchu.

Algorytm ten jest pierwszym odkrytym algorytmem, który rozwiązuje problem wyszukiwania wzorca w tekście, cechuje się złożonością liniową względem długości tekstu oraz wzorca. Jego nazwa pochodzi od trzech matematyków‑informatyków, którzy wspólnie opublikowali ostateczną wersję algorymtu: Donald Ervin Knuth, Vaughan Ronald Pratt oraz James Hiram Morris. W skrócie algorytm nazywamy „KMP”.

Algorytm KMP sprawdza po kolei każdy znak tekstu, do którego możemy dopasować wzorzec. W momencie, gdy pierwszy znak wzorca oraz aktualnie przetwarzany znak tekstu są takie same, rozpoczynamy sprawdzanie po kolei, czy następne znaki wzorca i tekstu są identyczne. Na pierwszy rzut oka metoda ta działa w taki sam sposób, jak metoda naiwna. Usprawnienie pojawia się jednak w momencie, gdy już znaleźliśmy potencjalne dopasowanie, które okazuje się błędne. W takiej sytuacji algorytm KMP pomija sprawdzanie dopasowania na tych następnych pozycjach, które na pewno okażą się błędne.

Pomocna w tym działaniu jest analiza wstępna wzorca, która polega na utworzeniu tablicy częściowych dopasowań. Przechowuje ona liczby całkowite. Długość takiej tablicy to długość wzorca powiększona o 1. Aby najłatwiej wytłumaczyć proces analizy wzorca w algorytmie KMP, posłużymy się wcześniejszą jego wersją (znaną jako algorytm MP), a następnie rozszerzymy ją o pewien dodatkowy przypadek, dzięki któremu powstała jego obecna wersja.

Chcąc dokładnie omówić tę procedurę, musimy wprowadzić kilka pojęć:

  1. prefiks – składająca się z k znaków przednia część łańcucha znaków;

  2. sufiks – składająca się z k znaków końcowa część łańcucha znaków;

  3. prefikso‑sufiks – składająca się z k znaków część łańcucha znaków, która występuje zarówno z przodu, jak i z tyłu;

  4. szerokość prefikso‑sufiksu – długość prefiksu lub sufiksu, z którego składa się prefikso‑sufiks.

Budowa tablicy częściowych dopasowań w algorytmie MP polega na wyznaczeniu maksymalnego prefikso‑sufiksu dla każdego możliwego prefiksu we wzorcu.

Ciekawostka

Algorytmy wyszukiwania wzorca w tekście stosowane są często w genetyce. Przykład, którym się posłużymy, będzie operował na znakach A, C, G, T, czyli na symbolach oznaczających zasady azotowe, z których zbudowane jest DNA. Więcej na temat DNA przeczytasz w e‑materiale DNA jako nośnik informacji genetycznejPO5R814osDNA jako nośnik informacji genetycznej.

Oznaczmy ciąg znaków wzorzec jako W oraz tablicę częściowych dopasowań jako T.

Krok 0:

Na zerowej pozycji w tablicy T wstawimy liczbę -1, która będzie naszym wartownikiem.

RrnePchYkQS1U
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

Krok 1:

Pierwszy możliwy prefiks wzorca to „G”. Wśród ciągu znaków „G” nie występuje żaden prefikso‑sufiks, zatem kolejny element w tablicy T to 0 – prefikso‑sufiks pusty.

RgRUBIjKyXWzY
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

Krok 2:

Kolejny prefiks wzorca to „GC”. Nie występuje żaden prefikso‑sufiks, zatem jako kolejny element tablicy również wstawiamy 0 – prefikso‑sufiks pusty.

RIpcZTx3g8Zpp
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

Krok 3:

Kolejny prefiks to „GCA”. Znowu występuje jedynie prefikso‑sufiks pusty, więc do tablicy wstawiamy 0.

R1HiZ7YFxEf1o
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

Krok 4:

Sytuacja jak poprzednio – wstawiamy 0.

RU4ba4ra2pSPX
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

Krok 5:

W aktualnie przeszukiwanym fiksie „GCATG” znaleźliśmy pierwszy prefikso‑sufiks. Jego szerokość wynosi 1, zatem w tablicy umieszczamy element 1.

RacgQ4oKNc0fO
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

Krok 6:

W kolejnym prefiksie największy prefikso‑sufiks, jaki znajdziemy, jest o szerokości 2. Zauważmy, że nie musimy w tym kroku przeszukiwać całego prefiksu „GCATGC”, gdyż możemy kontynuować wyszukiwanie, które rozpoczęliśmy w poprzednim kroku.

RBReEkZM4CYou
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

Krok 7:

W tym kroku największy prefikso‑sufiks ma szerokość 1. Pamiętając o informacji z poprzedniego kroku, sprawdź czy uda się rozszerzyć poprzednio znaleziony prefikso‑sufiks. Dopiero gdy próba się nie powiedzie, sprawdzamy, czy możemy znaleźć inny prefikso‑sufiks. Zatem w tym kroku są wykonywane tak naprawdę 2 kroki.

RZgJ9fLy6nTDh
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

Krok 8:

W prefiksie „GCATGCGA” nie ma żadnego prefikso‑sufiksu. Również w tym kroku próbowaliśmy rozszerzyć poprzedni prefikso‑sufiks.

RILM3Vla4JLcB
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

Krok 9:

Znaleźliśmy prefikso‑sufiks o długości 1 – w tablicy zapisujemy tę wartość.

R1MC5MFyqyWtP
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

Krok 10:

Możemy rozszerzyć poprzednio znaleziony prefikso‑sufiks. Do tablicy wpisujemy wartość o 1 większą niż w poprzednim kroku.

R1GnQT1SkIlHV
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

Wszystkie powyżej opisane kroki możemy przedstawić za pomocą poniższego pseudokodu. Jako W oznaczono wzorzec:

Linia 1. funkcja budowaTablicyMP otwórz nawias okrągły W zamknij nawias okrągły. Linia 2. rozmiarT znak równości długość otwórz nawias okrągły W zamknij nawias okrągły plus 1. Linia 3. stwórz tablicę T o długości rozmiarT. Linia 4. poz znak równości minus 1. Linia 5. T otwórz nawias kwadratowy 0 zamknij nawias kwadratowy znak równości minus 1. Linia 6. otwórz nawias ostrokątny code style znak równości cudzysłów white minus space dwukropek pre średnik cudzysłów data minus inline zamknij nawias ostrokątny prawy ukośnik prawy ukośnik dla każdego kolejnego prefiksu wzorca. Linia 7. dla i znak równości 1 przecinek 2 przecinek kropka kropka kropka przecinek rozmiarT minus 1 wykonuj dwukropek. Linia 8. prawy ukośnik prawy ukośnik dopóki możesz znaleźć dłuższy prefikso minus sufiks. Linia 9. dopóki poz ampersant gt średnik minus 1 i W otwórz nawias kwadratowy poz zamknij nawias kwadratowy wykrzyknik znak równości W otwórz nawias kwadratowy i minus 1 zamknij nawias kwadratowy wykonuj dwukropek. Linia 10. poz znak równości T otwórz nawias kwadratowy poz zamknij nawias kwadratowy. Linia 11. poz plus znak równości 1. Linia 13. prawy ukośnik prawy ukośnik zapisz szerokość znalezionego prefikso minus sufiksu. Linia 14. T otwórz nawias kwadratowy i zamknij nawias kwadratowy znak równości poz. Linia 16. zwróć T otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów codemirror minus holder cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror cm minus s minus default cudzysłów translate znak równości cudzysłów no cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów overflow dwukropek hidden średnik position dwukropek relative średnik width dwukropek 3px średnik height dwukropek 0px średnik top dwukropek 4px średnik left dwukropek 34px średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny textarea style znak równości cudzysłów position dwukropek absolute średnik bottom dwukropek minus 1em średnik padding dwukropek 0px średnik width dwukropek 1px średnik height dwukropek 1em średnik min minus height dwukropek 1em średnik outline dwukropek none średnik cudzysłów wrap znak równości cudzysłów off cudzysłów autocorrect znak równości cudzysłów off cudzysłów autocapitalize znak równości cudzysłów none cudzysłów spellcheck znak równości cudzysłów false cudzysłów readonly znak równości cudzysłów cudzysłów tabindex znak równości cudzysłów 0 cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik textarea zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus vscrollbar cudzysłów tabindex znak równości cudzysłów minus 1 cudzysłów cm minus not minus content znak równości cudzysłów true cudzysłów style znak równości cudzysłów display dwukropek block średnik bottom dwukropek 0px średnik width dwukropek 18px średnik visibility dwukropek hidden średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów min minus width dwukropek 1px średnik height dwukropek 505px średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus hscrollbar cudzysłów tabindex znak równości cudzysłów minus 1 cudzysłów cm minus not minus content znak równości cudzysłów true cudzysłów style znak równości cudzysłów height dwukropek 18px średnik visibility dwukropek hidden średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów height dwukropek 100 procent średnik min minus height dwukropek 1px średnik width dwukropek 0px średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus scrollbar minus filler cudzysłów cm minus not minus content znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus filler cudzysłów cm minus not minus content znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus scroll cudzysłów tabindex znak równości cudzysłów minus 1 cudzysłów draggable znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus sizer cudzysłów style znak równości cudzysłów margin minus left dwukropek 30px średnik margin minus bottom dwukropek 0px średnik border minus right minus width dwukropek 50px średnik min minus height dwukropek 485px średnik min minus width dwukropek 539 kropka 95px średnik padding minus right dwukropek 0px średnik padding minus bottom dwukropek 0px średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik top dwukropek 0px średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus lines cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik outline dwukropek none średnik cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus measure cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line minus like cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span zamknij nawias ostrokątny xxxxxxxxxx otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus measure cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik z minus index dwukropek 1 średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus cursors cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus cursor cudzysłów style znak równości cudzysłów left dwukropek 4px średnik top dwukropek 0px średnik height dwukropek 28 kropka 0667px średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus code cudzysłów role znak równości cudzysłów presentation cudzysłów style znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 1 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny funkcja budowaTablicyMP otwórz nawias okrągły W zamknij nawias okrągły otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 2 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny rozmiarT znak równości długość otwórz nawias okrągły W zamknij nawias okrągły plus 1 otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 3 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów cm minus tab cudzysłów role znak równości cudzysłów presentation cudzysłów cm minus text znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny stwórz tablicę T o długości rozmiarT otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 4 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny poz znak równości minus 1 otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 5 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny T otwórz nawias kwadratowy 0 zamknij nawias kwadratowy znak równości minus 1 otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 6 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span cm minus text znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 7 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów cm minus tab cudzysłów role znak równości cudzysłów presentation cudzysłów cm minus text znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny prawy ukośnik prawy ukośnik dla każdego kolejnego prefiksu wzorca otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 8 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny dla i znak równości 1 przecinek 2 przecinek kropka kropka kropka przecinek rozmiarT minus 1 wykonuj dwukropek otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 9 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów cm minus tab cudzysłów role znak równości cudzysłów presentation cudzysłów cm minus text znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny prawy ukośnik prawy ukośnik dopóki możesz znaleźć dłuższy prefikso minus sufiks otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 10 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny dopóki poz ampersant gt średnik minus 1 i W otwórz nawias kwadratowy poz zamknij nawias kwadratowy wykrzyknik znak równości W otwórz nawias kwadratowy i minus 1 zamknij nawias kwadratowy wykonuj dwukropek otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 11 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny poz znak równości T otwórz nawias kwadratowy poz zamknij nawias kwadratowy otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 12 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny poz plus znak równości 1 otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 13 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span cm minus text znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 14 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów cm minus tab cudzysłów role znak równości cudzysłów presentation cudzysłów cm minus text znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów cm minus tab cudzysłów role znak równości cudzysłów presentation cudzysłów cm minus text znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny prawy ukośnik prawy ukośnik zapisz szerokość znalezionego prefikso minus sufiksu otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 15 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny T otwórz nawias kwadratowy i zamknij nawias kwadratowy znak równości poz otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 16 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span cm minus text znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 17 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny zwróć T otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek absolute średnik height dwukropek 50px średnik width dwukropek 1px średnik border minus bottom dwukropek 0px solid transparent średnik top dwukropek 485px średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutters cudzysłów style znak równości cudzysłów height dwukropek 535px średnik left dwukropek 0px średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter CodeMirror minus linenumbers cudzysłów style znak równości cudzysłów width dwukropek 29px średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figure zamknij nawias ostrokątny otwórz nawias ostrokątny h2 data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 5A cudzysłów id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 5A cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny Usprawnienie otwórz nawias ostrokątny span data minus editor minus params znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus specifier minus resolvedby znak równości cudzysłów cudzysłów data minus specifier minus type znak równości cudzysłów cudzysłów data minus specifier minus type minus main znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus alternative znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus value znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik h2 zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 33 cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 33 cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny Omówmy dodatkowy przecinek wspominany już przypadek przecinek który ulepsza metodę MP do KMP kropka Występuje wówczas przecinek gdy znaleźliśmy prefikso‑sufiks otwórz nawias okrągły może być pusty zamknij nawias okrągły w aktualnie sprawdzanym prefiksie przecinek ale znak następujący po tym prefiksie przecinek jest taki sam jak ten przecinek który występuje po prefikso‑sufiksie otwórz nawias okrągły po części prefiksowej zamknij nawias okrągły kropka W takiej sytuacji do tablicy wstawiamy wartość przecinek która już została zapisana w tablicy otwórz nawias ostrokątny code style znak równości cudzysłów white minus space dwukropek pre średnik cudzysłów data minus inline znak równości cudzysłów cudzysłów zamknij nawias ostrokątny T otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny na pozycji określonej długością obecnego prefikso‑sufiksu kropka Jeżeli porównywane elementy są różne przecinek do tablicy wpisujemy długość prefikso‑sufiksu kropka Brzmi to bardzo skomplikowanie kropka Dlatego też prześledźmy to na konkretnym przykładzie – tym samym przecinek który omówiliśmy przy algorytmie MP kropka otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 35 cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 35 cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny strong zamknij nawias ostrokątny Krok 0 otwórz nawias ostrokątny prawy ukośnik strong zamknij nawias ostrokątny dwukropek otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 37 cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 37 cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny Tak jak w przypadku algorytmu MP przecinek na zerowym miejscu tablicy wstawiamy wartownika minus 1 kropka otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny section data minus block minus name znak równości cudzysłów ResourceElement cudzysłów data minus block minus resolved minus by znak równości cudzysłów media cudzysłów data minus editor minus block znak równości cudzysłów cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus editor minus params znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus specifier minus resolvedby znak równości cudzysłów cudzysłów data minus specifier minus type znak równości cudzysłów media cudzysłów data minus specifier minus type minus main znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus alternative znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus value znak równości cudzysłów cudzysłów zamknij nawias ostrokątny RzUoGZ1kXsicH otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny div data minus editor minus block minus content znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny figure class znak równości cudzysłów figure image cp minus image cudzysłów data minus exercise minus level znak równości cudzysłów cudzysłów data minus resource minus id znak równości cudzysłów RzUoGZ1kXsicH cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 38 cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów data minus resource minus status znak równości cudzysłów cudzysłów id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 38 cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów cp minus editor minus alt cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów style znak równości cudzysłów display dwukropek none cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny Ilustracja przedstawia tabelę z dwoma wierszami kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Wiersz pierwszym dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek reszta pól jest pusta kropka otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów image minus link image minus fullscreen minus trigger cudzysłów href znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik RzUoGZ1kXsicH prawy ukośnik 1665413745 prawy ukośnik 1MI20rE33lPJGlSoDh8yN2wzqioAx0ra kropka png cudzysłów data minus lightbox znak równości cudzysłów 677d0c7597059 cudzysłów data minus title znak równości cudzysłów ampersant lt średnik div class znak równości ampersant quot średnik figcaption podkreślnik content ampersant quot średnik data minus editor minus disabled ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik ampersant lt średnik div class znak równości ampersant quot średnik figure podkreślnik caption podkreślnik bibliography ampersant quot średnik data minus editor minus no minus parse ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik pl ampersant quot średnik ampersant gt średnik ampersant lt średnik span class znak równości ampersant quot średnik ref minus minus before ampersant quot średnik ampersant gt średnik Źródło dwukropek ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik en ampersant quot średnik ampersant gt średnik Contentplus ampersant lt średnik prawy ukośnik span ampersant gt średnik kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny picture zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów sr minus only cudzysłów zamknij nawias ostrokątny Kliknij przecinek aby uruchomić podgląd otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny img src znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik RzUoGZ1kXsicH prawy ukośnik 1665413745 prawy ukośnik 1MI20rE33lPJGlSoDh8yN2wzqioAx0ra kropka png cudzysłów alt znak równości cudzysłów Ilustracja przedstawia tabelę z dwoma wierszami kropka Wiersz pierwszym dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek reszta pól jest pusta kropka cudzysłów title znak równości cudzysłów cudzysłów class znak równości cudzysłów figure podkreślnik img cp minus gallery minus set minus size cudzysłów tabindex znak równości cudzysłów 0 cudzysłów aria minus haspopup znak równości cudzysłów true cudzysłów role znak równości cudzysłów img cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik picture zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny figcaption class znak równości cudzysłów figure podkreślnik caption cudzysłów data minus editor minus disabled znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów figure podkreślnik caption podkreślnik bibliography cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów ref minus minus before cudzysłów zamknij nawias ostrokątny Źródło dwukropek otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów en cudzysłów zamknij nawias ostrokątny Contentplus otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figcaption zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figure zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik section zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 39 cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 39 cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny strong zamknij nawias ostrokątny Krok 1 otwórz nawias ostrokątny prawy ukośnik strong zamknij nawias ostrokątny dwukropek otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3B cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3B cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny Jedyny prefikso‑sufiks przecinek który jesteśmy w stanie znaleźć przecinek to prefikso‑sufiks pusty kropka Należy jednak porównać zaznaczone na niebiesko elementy otwórz nawias okrągły element występujący po znalezionym prefikso‑sufiksie – cudzysłów G cudzysłów zamknij nawias okrągły oraz element występujący po aktualnie przetwarzanym prefiksie – cudzysłów C cudzysłów zamknij nawias okrągły kropka Są różne przecinek zatem możemy wpisać do tablicy szerokość znalezionego prefikso‑sufiksu – 0 kropka otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny section data minus block minus name znak równości cudzysłów ResourceElement cudzysłów data minus block minus resolved minus by znak równości cudzysłów media cudzysłów data minus editor minus block znak równości cudzysłów cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus editor minus params znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus specifier minus resolvedby znak równości cudzysłów cudzysłów data minus specifier minus type znak równości cudzysłów media cudzysłów data minus specifier minus type minus main znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus alternative znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus value znak równości cudzysłów cudzysłów zamknij nawias ostrokątny R1b1ewZxUERcB otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny div data minus editor minus block minus content znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny figure class znak równości cudzysłów figure image cp minus image cudzysłów data minus exercise minus level znak równości cudzysłów cudzysłów data minus resource minus id znak równości cudzysłów R1b1ewZxUERcB cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3C cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów data minus resource minus status znak równości cudzysłów cudzysłów id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3C cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów cp minus editor minus alt cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów style znak równości cudzysłów display dwukropek none cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny Ilustracja przedstawia dwie tabelę z dwoma wierszami kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Tabela pierwsza dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Pole trzecie z literą G zaznaczono kolorem morskim kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek reszta pól jest pusta kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Tabela druga dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Pole trzecie i czwarte z literami G przecinek C zaznaczono kolorem granatowym kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 reszta pól jest pusta kropka otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów image minus link image minus fullscreen minus trigger cudzysłów href znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik R1b1ewZxUERcB prawy ukośnik 1665413745 prawy ukośnik xL0xtyJt5D7K7N8aMgfVywUuVmAe1BlT kropka png cudzysłów data minus lightbox znak równości cudzysłów 677d0c759ff3a cudzysłów data minus title znak równości cudzysłów ampersant lt średnik div class znak równości ampersant quot średnik figcaption podkreślnik content ampersant quot średnik data minus editor minus disabled ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik ampersant lt średnik div class znak równości ampersant quot średnik figure podkreślnik caption podkreślnik bibliography ampersant quot średnik data minus editor minus no minus parse ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik pl ampersant quot średnik ampersant gt średnik ampersant lt średnik span class znak równości ampersant quot średnik ref minus minus before ampersant quot średnik ampersant gt średnik Źródło dwukropek ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik en ampersant quot średnik ampersant gt średnik Contentplus ampersant lt średnik prawy ukośnik span ampersant gt średnik kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny picture zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów sr minus only cudzysłów zamknij nawias ostrokątny Kliknij przecinek aby uruchomić podgląd otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny img src znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik R1b1ewZxUERcB prawy ukośnik 1665413745 prawy ukośnik xL0xtyJt5D7K7N8aMgfVywUuVmAe1BlT kropka png cudzysłów alt znak równości cudzysłów Ilustracja przedstawia dwie tabelę z dwoma wierszami kropka Tabela pierwsza dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka Pole trzecie z literą G zaznaczono kolorem morskim kropka W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek reszta pól jest pusta kropka Tabela druga dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka Pole trzecie i czwarte z literami G przecinek C zaznaczono kolorem granatowym kropka W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 reszta pól jest pusta kropka cudzysłów title znak równości cudzysłów cudzysłów class znak równości cudzysłów figure podkreślnik img cp minus gallery minus set minus size cudzysłów tabindex znak równości cudzysłów 0 cudzysłów aria minus haspopup znak równości cudzysłów true cudzysłów role znak równości cudzysłów img cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik picture zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny figcaption class znak równości cudzysłów figure podkreślnik caption cudzysłów data minus editor minus disabled znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów figure podkreślnik caption podkreślnik bibliography cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów ref minus minus before cudzysłów zamknij nawias ostrokątny Źródło dwukropek otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów en cudzysłów zamknij nawias ostrokątny Contentplus otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figcaption zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figure zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik section zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3D cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3D cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny strong zamknij nawias ostrokątny Krok 2 otwórz nawias ostrokątny prawy ukośnik strong zamknij nawias ostrokątny dwukropek otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3F cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3F cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny Podobna sytuacja jak w kroku 1 kropka Znaleźliśmy prefikso‑sufiks pusty kropka Porównujemy 2 elementy przecinek które występują po znalezionym prefikso‑sufiksie oraz po przetwarzanej części wzorca kropka Są one różne przecinek zatem możemy wstawić szerokość prefikso‑sufiksu kropka otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny section data minus block minus name znak równości cudzysłów ResourceElement cudzysłów data minus block minus resolved minus by znak równości cudzysłów media cudzysłów data minus editor minus block znak równości cudzysłów cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus editor minus params znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus specifier minus resolvedby znak równości cudzysłów cudzysłów data minus specifier minus type znak równości cudzysłów media cudzysłów data minus specifier minus type minus main znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus alternative znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus value znak równości cudzysłów cudzysłów zamknij nawias ostrokątny R7n66dD3FHgEC otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny div data minus editor minus block minus content znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny figure class znak równości cudzysłów figure image cp minus image cudzysłów data minus exercise minus level znak równości cudzysłów cudzysłów data minus resource minus id znak równości cudzysłów R7n66dD3FHgEC cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3G cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów data minus resource minus status znak równości cudzysłów cudzysłów id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3G cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów cp minus editor minus alt cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów style znak równości cudzysłów display dwukropek none cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny Ilustracja przedstawia dwie tabelę z dwoma wierszami kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Tabela pierwsza dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Pola trzecie i czwarte z literami G przecinek C zaznaczono kolorem morskim kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 reszta pól jest pusta kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Tabela druga dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Pole trzecie i piąte z literami G przecinek A zaznaczono kolorem granatowym kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 reszta pól jest pusta kropka otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów image minus link image minus fullscreen minus trigger cudzysłów href znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik R7n66dD3FHgEC prawy ukośnik 1665413745 prawy ukośnik xKcJItn7i6LJtP1luAccswmNMYB8RUNG kropka png cudzysłów data minus lightbox znak równości cudzysłów 677d0c75a1697 cudzysłów data minus title znak równości cudzysłów ampersant lt średnik div class znak równości ampersant quot średnik figcaption podkreślnik content ampersant quot średnik data minus editor minus disabled ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik ampersant lt średnik div class znak równości ampersant quot średnik figure podkreślnik caption podkreślnik bibliography ampersant quot średnik data minus editor minus no minus parse ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik pl ampersant quot średnik ampersant gt średnik ampersant lt średnik span class znak równości ampersant quot średnik ref minus minus before ampersant quot średnik ampersant gt średnik Źródło dwukropek ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik en ampersant quot średnik ampersant gt średnik Contentplus ampersant lt średnik prawy ukośnik span ampersant gt średnik kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny picture zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów sr minus only cudzysłów zamknij nawias ostrokątny Kliknij przecinek aby uruchomić podgląd otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny img src znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik R7n66dD3FHgEC prawy ukośnik 1665413745 prawy ukośnik xKcJItn7i6LJtP1luAccswmNMYB8RUNG kropka png cudzysłów alt znak równości cudzysłów Ilustracja przedstawia dwie tabelę z dwoma wierszami kropka Tabela pierwsza dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka Pola trzecie i czwarte z literami G przecinek C zaznaczono kolorem morskim kropka W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 reszta pól jest pusta kropka Tabela druga dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka Pole trzecie i piąte z literami G przecinek A zaznaczono kolorem granatowym kropka W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 reszta pól jest pusta kropka cudzysłów title znak równości cudzysłów cudzysłów class znak równości cudzysłów figure podkreślnik img cp minus gallery minus set minus size cudzysłów tabindex znak równości cudzysłów 0 cudzysłów aria minus haspopup znak równości cudzysłów true cudzysłów role znak równości cudzysłów img cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik picture zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny figcaption class znak równości cudzysłów figure podkreślnik caption cudzysłów data minus editor minus disabled znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów figure podkreślnik caption podkreślnik bibliography cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów ref minus minus before cudzysłów zamknij nawias ostrokątny Źródło dwukropek otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów en cudzysłów zamknij nawias ostrokątny Contentplus otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figcaption zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figure zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik section zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3H cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3H cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny strong zamknij nawias ostrokątny Krok 3 otwórz nawias ostrokątny prawy ukośnik strong zamknij nawias ostrokątny dwukropek otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3J cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3J cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny Sytuacja identyczna jak w poprzednim kroku – wstawiamy 0 kropka otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny section data minus block minus name znak równości cudzysłów ResourceElement cudzysłów data minus block minus resolved minus by znak równości cudzysłów media cudzysłów data minus editor minus block znak równości cudzysłów cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus editor minus params znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus specifier minus resolvedby znak równości cudzysłów cudzysłów data minus specifier minus type znak równości cudzysłów media cudzysłów data minus specifier minus type minus main znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus alternative znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus value znak równości cudzysłów cudzysłów zamknij nawias ostrokątny R1Ndp9m3HUT0c otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny div data minus editor minus block minus content znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny figure class znak równości cudzysłów figure image cp minus image cudzysłów data minus exercise minus level znak równości cudzysłów cudzysłów data minus resource minus id znak równości cudzysłów R1Ndp9m3HUT0c cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3K cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów data minus resource minus status znak równości cudzysłów cudzysłów id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3K cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów cp minus editor minus alt cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów style znak równości cudzysłów display dwukropek none cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny Ilustracja przedstawia dwie tabelę z dwoma wierszami kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Tabela pierwsza dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Pola od trzeciego do piątego z literami G przecinek C przecinek A zaznaczono kolorem morskim kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 reszta pól jest pusta kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Tabela druga dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Pole trzecie i szóste z literami G przecinek T zaznaczono kolorem granatowym kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 reszta pól jest pusta kropka otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów image minus link image minus fullscreen minus trigger cudzysłów href znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik R1Ndp9m3HUT0c prawy ukośnik 1665413746 prawy ukośnik 2KHHY814lhWqfPaysdK2dhLdJcDsMScY kropka png cudzysłów data minus lightbox znak równości cudzysłów 677d0c75a2d45 cudzysłów data minus title znak równości cudzysłów ampersant lt średnik div class znak równości ampersant quot średnik figcaption podkreślnik content ampersant quot średnik data minus editor minus disabled ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik ampersant lt średnik div class znak równości ampersant quot średnik figure podkreślnik caption podkreślnik bibliography ampersant quot średnik data minus editor minus no minus parse ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik pl ampersant quot średnik ampersant gt średnik ampersant lt średnik span class znak równości ampersant quot średnik ref minus minus before ampersant quot średnik ampersant gt średnik Źródło dwukropek ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik en ampersant quot średnik ampersant gt średnik Contentplus ampersant lt średnik prawy ukośnik span ampersant gt średnik kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny picture zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów sr minus only cudzysłów zamknij nawias ostrokątny Kliknij przecinek aby uruchomić podgląd otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny img src znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik R1Ndp9m3HUT0c prawy ukośnik 1665413746 prawy ukośnik 2KHHY814lhWqfPaysdK2dhLdJcDsMScY kropka png cudzysłów alt znak równości cudzysłów Ilustracja przedstawia dwie tabelę z dwoma wierszami kropka Tabela pierwsza dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka Pola od trzeciego do piątego z literami G przecinek C przecinek A zaznaczono kolorem morskim kropka W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 reszta pól jest pusta kropka Tabela druga dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka Pole trzecie i szóste z literami G przecinek T zaznaczono kolorem granatowym kropka W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 reszta pól jest pusta kropka cudzysłów title znak równości cudzysłów cudzysłów class znak równości cudzysłów figure podkreślnik img cp minus gallery minus set minus size cudzysłów tabindex znak równości cudzysłów 0 cudzysłów aria minus haspopup znak równości cudzysłów true cudzysłów role znak równości cudzysłów img cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik picture zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny figcaption class znak równości cudzysłów figure podkreślnik caption cudzysłów data minus editor minus disabled znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów figure podkreślnik caption podkreślnik bibliography cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów ref minus minus before cudzysłów zamknij nawias ostrokątny Źródło dwukropek otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów en cudzysłów zamknij nawias ostrokątny Contentplus otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figcaption zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figure zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik section zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3L cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3L cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny strong zamknij nawias ostrokątny Krok 4 otwórz nawias ostrokątny prawy ukośnik strong zamknij nawias ostrokątny dwukropek otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3N cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3N cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny Znowu znaleźliśmy pusty prefikso‑sufiks kropka Jest to jednak pierwszy przypadek przecinek w którym porównywane później elementy są takie same kropka W takiej sytuacji musimy odczytać z tablicy otwórz nawias ostrokątny code style znak równości cudzysłów white minus space dwukropek pre średnik cudzysłów data minus inline znak równości cudzysłów cudzysłów zamknij nawias ostrokątny T otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny wartość pod indeksem określonym przez długość obecnego prefikso‑sufiksu kropka Długość ta wynosi w tym wypadku 0 otwórz nawias okrągły prefikso‑sufiks pusty zamknij nawias okrągły przecinek otwórz nawias ostrokątny code style znak równości cudzysłów white minus space dwukropek pre średnik cudzysłów data minus inline znak równości cudzysłów cudzysłów zamknij nawias ostrokątny T otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny otwórz nawias kwadratowy 0 zamknij nawias kwadratowy znak równości minus 1 przecinek zatem ustawiamy wartownika minus 1 kropka otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny section data minus block minus name znak równości cudzysłów ResourceElement cudzysłów data minus block minus resolved minus by znak równości cudzysłów media cudzysłów data minus editor minus block znak równości cudzysłów cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus editor minus params znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus specifier minus resolvedby znak równości cudzysłów cudzysłów data minus specifier minus type znak równości cudzysłów media cudzysłów data minus specifier minus type minus main znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus alternative znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus value znak równości cudzysłów cudzysłów zamknij nawias ostrokątny R8TvOk4GdVwej otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny div data minus editor minus block minus content znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny figure class znak równości cudzysłów figure image cp minus image cudzysłów data minus exercise minus level znak równości cudzysłów cudzysłów data minus resource minus id znak równości cudzysłów R8TvOk4GdVwej cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3Q cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów data minus resource minus status znak równości cudzysłów cudzysłów id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3Q cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów cp minus editor minus alt cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów style znak równości cudzysłów display dwukropek none cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny Ilustracja przedstawia dwie tabelę z dwoma wierszami kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Tabela pierwsza dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Pola od trzeciego do szóstego z literami G przecinek C przecinek A przecinek T zaznaczono kolorem morskim kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 reszta pól jest pusta kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Tabela druga dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Pole trzecie i siódme z literami G przecinek G zaznaczono kolorem granatowym kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek reszta pól jest pusta kropka otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów image minus link image minus fullscreen minus trigger cudzysłów href znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik R8TvOk4GdVwej prawy ukośnik 1665413746 prawy ukośnik vAnhMKPon6ExErlBhQDKl8S7WvP6MAYt kropka png cudzysłów data minus lightbox znak równości cudzysłów 677d0c75a409a cudzysłów data minus title znak równości cudzysłów ampersant lt średnik div class znak równości ampersant quot średnik figcaption podkreślnik content ampersant quot średnik data minus editor minus disabled ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik ampersant lt średnik div class znak równości ampersant quot średnik figure podkreślnik caption podkreślnik bibliography ampersant quot średnik data minus editor minus no minus parse ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik pl ampersant quot średnik ampersant gt średnik ampersant lt średnik span class znak równości ampersant quot średnik ref minus minus before ampersant quot średnik ampersant gt średnik Źródło dwukropek ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik en ampersant quot średnik ampersant gt średnik Contentplus ampersant lt średnik prawy ukośnik span ampersant gt średnik kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny picture zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów sr minus only cudzysłów zamknij nawias ostrokątny Kliknij przecinek aby uruchomić podgląd otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny img src znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik R8TvOk4GdVwej prawy ukośnik 1665413746 prawy ukośnik vAnhMKPon6ExErlBhQDKl8S7WvP6MAYt kropka png cudzysłów alt znak równości cudzysłów Ilustracja przedstawia dwie tabelę z dwoma wierszami kropka Tabela pierwsza dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka Pola od trzeciego do szóstego z literami G przecinek C przecinek A przecinek T zaznaczono kolorem morskim kropka W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 reszta pól jest pusta kropka Tabela druga dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka Pole trzecie i siódme z literami G przecinek G zaznaczono kolorem granatowym kropka W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek reszta pól jest pusta kropka cudzysłów title znak równości cudzysłów cudzysłów class znak równości cudzysłów figure podkreślnik img cp minus gallery minus set minus size cudzysłów tabindex znak równości cudzysłów 0 cudzysłów aria minus haspopup znak równości cudzysłów true cudzysłów role znak równości cudzysłów img cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik picture zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny figcaption class znak równości cudzysłów figure podkreślnik caption cudzysłów data minus editor minus disabled znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów figure podkreślnik caption podkreślnik bibliography cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów ref minus minus before cudzysłów zamknij nawias ostrokątny Źródło dwukropek otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów en cudzysłów zamknij nawias ostrokątny Contentplus otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figcaption zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figure zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik section zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3R cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3R cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny strong zamknij nawias ostrokątny Krok 5 otwórz nawias ostrokątny prawy ukośnik strong zamknij nawias ostrokątny dwukropek otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3T cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3T cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny Znaleźliśmy prefikso‑sufiks o szerokości 1 kropka Elementy przecinek które musimy porównać przecinek są takie same przecinek zatem odczytujemy otwórz nawias ostrokątny code style znak równości cudzysłów white minus space dwukropek pre średnik cudzysłów data minus inline znak równości cudzysłów cudzysłów zamknij nawias ostrokątny T otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny otwórz nawias kwadratowy 1 zamknij nawias kwadratowy znak równości 0 przecinek wpisujemy 0 kropka otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny section data minus block minus name znak równości cudzysłów ResourceElement cudzysłów data minus block minus resolved minus by znak równości cudzysłów media cudzysłów data minus editor minus block znak równości cudzysłów cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus editor minus params znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus specifier minus resolvedby znak równości cudzysłów cudzysłów data minus specifier minus type znak równości cudzysłów media cudzysłów data minus specifier minus type minus main znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus alternative znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus value znak równości cudzysłów cudzysłów zamknij nawias ostrokątny R11veRqkEJC8u otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny div data minus editor minus block minus content znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny figure class znak równości cudzysłów figure image cp minus image cudzysłów data minus exercise minus level znak równości cudzysłów cudzysłów data minus resource minus id znak równości cudzysłów R11veRqkEJC8u cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3V cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów data minus resource minus status znak równości cudzysłów cudzysłów id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3V cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów cp minus editor minus alt cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów style znak równości cudzysłów display dwukropek none cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny Ilustracja przedstawia dwie tabelę z dwoma wierszami kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Tabela pierwsza dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Pola trzecie i siódme z literami G przecinek G zaznaczono kolorem zielonym przecinek od czwartego do szóstego z literami C przecinek A przecinek T zaznaczono kolorem morskim kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek reszta pól jest pusta kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Tabela druga dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Pole czwarte i ósme z literami C przecinek C zaznaczono kolorem granatowym kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek 0 przecinek reszta pól jest pusta kropka otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów image minus link image minus fullscreen minus trigger cudzysłów href znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik R11veRqkEJC8u prawy ukośnik 1665413746 prawy ukośnik 2KUXDWSiXwTKvKmxyJ4XxinZ5eAPlSzD kropka png cudzysłów data minus lightbox znak równości cudzysłów 677d0c75a52ce cudzysłów data minus title znak równości cudzysłów ampersant lt średnik div class znak równości ampersant quot średnik figcaption podkreślnik content ampersant quot średnik data minus editor minus disabled ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik ampersant lt średnik div class znak równości ampersant quot średnik figure podkreślnik caption podkreślnik bibliography ampersant quot średnik data minus editor minus no minus parse ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik pl ampersant quot średnik ampersant gt średnik ampersant lt średnik span class znak równości ampersant quot średnik ref minus minus before ampersant quot średnik ampersant gt średnik Źródło dwukropek ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik en ampersant quot średnik ampersant gt średnik Contentplus ampersant lt średnik prawy ukośnik span ampersant gt średnik kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny picture zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów sr minus only cudzysłów zamknij nawias ostrokątny Kliknij przecinek aby uruchomić podgląd otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny img src znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik R11veRqkEJC8u prawy ukośnik 1665413746 prawy ukośnik 2KUXDWSiXwTKvKmxyJ4XxinZ5eAPlSzD kropka png cudzysłów alt znak równości cudzysłów Ilustracja przedstawia dwie tabelę z dwoma wierszami kropka Tabela pierwsza dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka Pola trzecie i siódme z literami G przecinek G zaznaczono kolorem zielonym przecinek od czwartego do szóstego z literami C przecinek A przecinek T zaznaczono kolorem morskim kropka W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek reszta pól jest pusta kropka Tabela druga dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka Pole czwarte i ósme z literami C przecinek C zaznaczono kolorem granatowym kropka W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek 0 przecinek reszta pól jest pusta kropka cudzysłów title znak równości cudzysłów cudzysłów class znak równości cudzysłów figure podkreślnik img cp minus gallery minus set minus size cudzysłów tabindex znak równości cudzysłów 0 cudzysłów aria minus haspopup znak równości cudzysłów true cudzysłów role znak równości cudzysłów img cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik picture zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny figcaption class znak równości cudzysłów figure podkreślnik caption cudzysłów data minus editor minus disabled znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów figure podkreślnik caption podkreślnik bibliography cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów ref minus minus before cudzysłów zamknij nawias ostrokątny Źródło dwukropek otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów en cudzysłów zamknij nawias ostrokątny Contentplus otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figcaption zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figure zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik section zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3W cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3W cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny strong zamknij nawias ostrokątny Krok 6 otwórz nawias ostrokątny prawy ukośnik strong zamknij nawias ostrokątny dwukropek otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3Y cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3Y cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny Prefikso‑sufiks ma szerokość 2 kropka Ponieważ elementy cudzysłów A cudzysłów i cudzysłów G cudzysłów są różne przecinek szerokość wpisujemy do tablicy kropka otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny section data minus block minus name znak równości cudzysłów ResourceElement cudzysłów data minus block minus resolved minus by znak równości cudzysłów media cudzysłów data minus editor minus block znak równości cudzysłów cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus editor minus params znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus specifier minus resolvedby znak równości cudzysłów cudzysłów data minus specifier minus type znak równości cudzysłów media cudzysłów data minus specifier minus type minus main znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus alternative znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus value znak równości cudzysłów cudzysłów zamknij nawias ostrokątny R1B0eTw1CCmlq otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny div data minus editor minus block minus content znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny figure class znak równości cudzysłów figure image cp minus image cudzysłów data minus exercise minus level znak równości cudzysłów cudzysłów data minus resource minus id znak równości cudzysłów R1B0eTw1CCmlq cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3Z cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów data minus resource minus status znak równości cudzysłów cudzysłów id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 3Z cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów cp minus editor minus alt cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów style znak równości cudzysłów display dwukropek none cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny Ilustracja przedstawia dwie tabelę z dwoma wierszami kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Tabela pierwsza dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Pola trzecie i siódme z literami G przecinek G przecinek czwarte i ósme z literami C przecinek C zaznaczono kolorem zielonym przecinek od piątego do szóstego z literami A przecinek T zaznaczono kolorem morskim kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek 0 przecinek reszta pól jest pusta kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Tabela druga dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Pole piąte i dziewiąte z literami A przecinek G zaznaczono kolorem granatowym kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek 0 przecinek 2 kropka reszta pól jest pusta kropka otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów image minus link image minus fullscreen minus trigger cudzysłów href znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik R1B0eTw1CCmlq prawy ukośnik 1665413746 prawy ukośnik 170TRW89md5zzUJrFiTT2rFoDT9VgFQ7 kropka png cudzysłów data minus lightbox znak równości cudzysłów 677d0c75a6440 cudzysłów data minus title znak równości cudzysłów ampersant lt średnik div class znak równości ampersant quot średnik figcaption podkreślnik content ampersant quot średnik data minus editor minus disabled ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik ampersant lt średnik div class znak równości ampersant quot średnik figure podkreślnik caption podkreślnik bibliography ampersant quot średnik data minus editor minus no minus parse ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik pl ampersant quot średnik ampersant gt średnik ampersant lt średnik span class znak równości ampersant quot średnik ref minus minus before ampersant quot średnik ampersant gt średnik Źródło dwukropek ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik en ampersant quot średnik ampersant gt średnik Contentplus ampersant lt średnik prawy ukośnik span ampersant gt średnik kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny picture zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów sr minus only cudzysłów zamknij nawias ostrokątny Kliknij przecinek aby uruchomić podgląd otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny img src znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik R1B0eTw1CCmlq prawy ukośnik 1665413746 prawy ukośnik 170TRW89md5zzUJrFiTT2rFoDT9VgFQ7 kropka png cudzysłów alt znak równości cudzysłów Ilustracja przedstawia dwie tabelę z dwoma wierszami kropka Tabela pierwsza dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka Pola trzecie i siódme z literami G przecinek G przecinek czwarte i ósme z literami C przecinek C zaznaczono kolorem zielonym przecinek od piątego do szóstego z literami A przecinek T zaznaczono kolorem morskim kropka W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek 0 przecinek reszta pól jest pusta kropka Tabela druga dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka Pole piąte i dziewiąte z literami A przecinek G zaznaczono kolorem granatowym kropka W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek 0 przecinek 2 kropka reszta pól jest pusta kropka cudzysłów title znak równości cudzysłów cudzysłów class znak równości cudzysłów figure podkreślnik img cp minus gallery minus set minus size cudzysłów tabindex znak równości cudzysłów 0 cudzysłów aria minus haspopup znak równości cudzysłów true cudzysłów role znak równości cudzysłów img cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik picture zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny figcaption class znak równości cudzysłów figure podkreślnik caption cudzysłów data minus editor minus disabled znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów figure podkreślnik caption podkreślnik bibliography cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów ref minus minus before cudzysłów zamknij nawias ostrokątny Źródło dwukropek otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów en cudzysłów zamknij nawias ostrokątny Contentplus otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figcaption zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figure zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik section zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 40 cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 40 cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny strong zamknij nawias ostrokątny Krok 7 otwórz nawias ostrokątny prawy ukośnik strong zamknij nawias ostrokątny dwukropek otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 42 cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 42 cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny W tym kroku znaleziony prefikso‑sufiks ma szerokość 1 przecinek elementy przecinek które porównujemy są różne przecinek więc do tablicy wstawiamy 1 kropka otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny section data minus block minus name znak równości cudzysłów ResourceElement cudzysłów data minus block minus resolved minus by znak równości cudzysłów media cudzysłów data minus editor minus block znak równości cudzysłów cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus editor minus params znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus specifier minus resolvedby znak równości cudzysłów cudzysłów data minus specifier minus type znak równości cudzysłów media cudzysłów data minus specifier minus type minus main znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus alternative znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus value znak równości cudzysłów cudzysłów zamknij nawias ostrokątny R1C3Zs44Ib4kN otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny div data minus editor minus block minus content znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny figure class znak równości cudzysłów figure image cp minus image cudzysłów data minus exercise minus level znak równości cudzysłów cudzysłów data minus resource minus id znak równości cudzysłów R1C3Zs44Ib4kN cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 43 cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów data minus resource minus status znak równości cudzysłów cudzysłów id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 43 cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów cp minus editor minus alt cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów style znak równości cudzysłów display dwukropek none cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny Ilustracja przedstawia dwie tabelę z dwoma wierszami kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Tabela pierwsza dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Pola trzecie i dziewiąte przecinek z literami G przecinek G przecinek zaznaczono kolorem zielonym przecinek od czwartego do ósmego z literami C przecinek A przecinek T przecinek G przecinek C zaznaczono kolorem morskim kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek 0 przecinek 2 przecinek reszta pól jest pusta kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Tabela druga dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Pole czwarte i dziesiąte z literami C przecinek A zaznaczono kolorem granatowym kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek 0 przecinek 2 przecinek 1 kropka reszta pól jest pusta kropka otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów image minus link image minus fullscreen minus trigger cudzysłów href znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik R1C3Zs44Ib4kN prawy ukośnik 1665413747 prawy ukośnik A2Gch0qdT5zRgSScglFTv8NYQlo4VFXH kropka png cudzysłów data minus lightbox znak równości cudzysłów 677d0c75a75c1 cudzysłów data minus title znak równości cudzysłów ampersant lt średnik div class znak równości ampersant quot średnik figcaption podkreślnik content ampersant quot średnik data minus editor minus disabled ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik ampersant lt średnik div class znak równości ampersant quot średnik figure podkreślnik caption podkreślnik bibliography ampersant quot średnik data minus editor minus no minus parse ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik pl ampersant quot średnik ampersant gt średnik ampersant lt średnik span class znak równości ampersant quot średnik ref minus minus before ampersant quot średnik ampersant gt średnik Źródło dwukropek ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik en ampersant quot średnik ampersant gt średnik Contentplus ampersant lt średnik prawy ukośnik span ampersant gt średnik kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny picture zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów sr minus only cudzysłów zamknij nawias ostrokątny Kliknij przecinek aby uruchomić podgląd otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny img src znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik R1C3Zs44Ib4kN prawy ukośnik 1665413747 prawy ukośnik A2Gch0qdT5zRgSScglFTv8NYQlo4VFXH kropka png cudzysłów alt znak równości cudzysłów Ilustracja przedstawia dwie tabelę z dwoma wierszami kropka Tabela pierwsza dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka Pola trzecie i dziewiąte przecinek z literami G przecinek G przecinek zaznaczono kolorem zielonym przecinek od czwartego do ósmego z literami C przecinek A przecinek T przecinek G przecinek C zaznaczono kolorem morskim kropka W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek 0 przecinek 2 przecinek reszta pól jest pusta kropka Tabela druga dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka Pole czwarte i dziesiąte z literami C przecinek A zaznaczono kolorem granatowym kropka W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek 0 przecinek 2 przecinek 1 kropka reszta pól jest pusta kropka cudzysłów title znak równości cudzysłów cudzysłów class znak równości cudzysłów figure podkreślnik img cp minus gallery minus set minus size cudzysłów tabindex znak równości cudzysłów 0 cudzysłów aria minus haspopup znak równości cudzysłów true cudzysłów role znak równości cudzysłów img cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik picture zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny figcaption class znak równości cudzysłów figure podkreślnik caption cudzysłów data minus editor minus disabled znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów figure podkreślnik caption podkreślnik bibliography cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów ref minus minus before cudzysłów zamknij nawias ostrokątny Źródło dwukropek otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów en cudzysłów zamknij nawias ostrokątny Contentplus otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figcaption zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figure zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik section zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 44 cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 44 cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny strong zamknij nawias ostrokątny Krok 8 otwórz nawias ostrokątny prawy ukośnik strong zamknij nawias ostrokątny dwukropek otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 46 cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 46 cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny Prefikso‑sufiks jest pusty – szerokość 0 kropka Następny element tablicy będzie zatem równy elementowy otwórz nawias ostrokątny code style znak równości cudzysłów white minus space dwukropek pre średnik cudzysłów data minus inline znak równości cudzysłów cudzysłów zamknij nawias ostrokątny T otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny otwórz nawias kwadratowy 0 zamknij nawias kwadratowy przecinek czyli minus 1 kropka otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny section data minus block minus name znak równości cudzysłów ResourceElement cudzysłów data minus block minus resolved minus by znak równości cudzysłów media cudzysłów data minus editor minus block znak równości cudzysłów cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus editor minus params znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus specifier minus resolvedby znak równości cudzysłów cudzysłów data minus specifier minus type znak równości cudzysłów media cudzysłów data minus specifier minus type minus main znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus alternative znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus value znak równości cudzysłów cudzysłów zamknij nawias ostrokątny RmVc8QKbm7sBU otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny div data minus editor minus block minus content znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny figure class znak równości cudzysłów figure image cp minus image cudzysłów data minus exercise minus level znak równości cudzysłów cudzysłów data minus resource minus id znak równości cudzysłów RmVc8QKbm7sBU cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 48 cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów data minus resource minus status znak równości cudzysłów cudzysłów id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 48 cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów cp minus editor minus alt cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów style znak równości cudzysłów display dwukropek none cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny Ilustracja przedstawia dwie tabelę z dwoma wierszami kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Tabela pierwsza dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Pola od trzeciego do dziesiątego zaznaczono kolorem morskim kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek 0 przecinek 2 przecinek 1 przecinek reszta pól jest pusta kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Tabela druga dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Pole trzecie i jedenaste z literami G przecinek G zaznaczono kolorem granatowym kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek 0 przecinek 2 przecinek 1 przecinek minus 1 kropka reszta pól jest pusta kropka otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów image minus link image minus fullscreen minus trigger cudzysłów href znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik RmVc8QKbm7sBU prawy ukośnik 1665413747 prawy ukośnik 15j03z9Of0Z8pn3yUzcESfevstfj4L9i kropka png cudzysłów data minus lightbox znak równości cudzysłów 677d0c75a8713 cudzysłów data minus title znak równości cudzysłów ampersant lt średnik div class znak równości ampersant quot średnik figcaption podkreślnik content ampersant quot średnik data minus editor minus disabled ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik ampersant lt średnik div class znak równości ampersant quot średnik figure podkreślnik caption podkreślnik bibliography ampersant quot średnik data minus editor minus no minus parse ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik pl ampersant quot średnik ampersant gt średnik ampersant lt średnik span class znak równości ampersant quot średnik ref minus minus before ampersant quot średnik ampersant gt średnik Źródło dwukropek ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik en ampersant quot średnik ampersant gt średnik Contentplus ampersant lt średnik prawy ukośnik span ampersant gt średnik kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny picture zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów sr minus only cudzysłów zamknij nawias ostrokątny Kliknij przecinek aby uruchomić podgląd otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny img src znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik RmVc8QKbm7sBU prawy ukośnik 1665413747 prawy ukośnik 15j03z9Of0Z8pn3yUzcESfevstfj4L9i kropka png cudzysłów alt znak równości cudzysłów Ilustracja przedstawia dwie tabelę z dwoma wierszami kropka Tabela pierwsza dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka Pola od trzeciego do dziesiątego zaznaczono kolorem morskim kropka W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek 0 przecinek 2 przecinek 1 przecinek reszta pól jest pusta kropka Tabela druga dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka Pole trzecie i jedenaste z literami G przecinek G zaznaczono kolorem granatowym kropka W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek 0 przecinek 2 przecinek 1 przecinek minus 1 kropka reszta pól jest pusta kropka cudzysłów title znak równości cudzysłów cudzysłów class znak równości cudzysłów figure podkreślnik img cp minus gallery minus set minus size cudzysłów tabindex znak równości cudzysłów 0 cudzysłów aria minus haspopup znak równości cudzysłów true cudzysłów role znak równości cudzysłów img cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik picture zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny figcaption class znak równości cudzysłów figure podkreślnik caption cudzysłów data minus editor minus disabled znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów figure podkreślnik caption podkreślnik bibliography cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów ref minus minus before cudzysłów zamknij nawias ostrokątny Źródło dwukropek otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów en cudzysłów zamknij nawias ostrokątny Contentplus otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figcaption zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figure zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik section zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 49 cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 49 cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny strong zamknij nawias ostrokątny Krok 9 otwórz nawias ostrokątny prawy ukośnik strong zamknij nawias ostrokątny dwukropek otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4B cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4B cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny Udało się rozszerzyć znaleziony w poprzednim kroku prefikso‑sufiks pusty do szerokości 1 kropka Porównywane elementy są takie same przecinek zatem wstawiamy wartość z komórki o indeksie równym szerokości kropka otwórz nawias ostrokątny code style znak równości cudzysłów white minus space dwukropek pre średnik cudzysłów data minus inline znak równości cudzysłów cudzysłów zamknij nawias ostrokątny T otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny otwórz nawias kwadratowy 1 zamknij nawias kwadratowy znak równości 0 przecinek więc kolejnym elementem będzie 0 kropka otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny section data minus block minus name znak równości cudzysłów ResourceElement cudzysłów data minus block minus resolved minus by znak równości cudzysłów media cudzysłów data minus editor minus block znak równości cudzysłów cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus editor minus params znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus specifier minus resolvedby znak równości cudzysłów cudzysłów data minus specifier minus type znak równości cudzysłów media cudzysłów data minus specifier minus type minus main znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus alternative znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus value znak równości cudzysłów cudzysłów zamknij nawias ostrokątny RWFr7HrkAitzk otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny div data minus editor minus block minus content znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny figure class znak równości cudzysłów figure image cp minus image cudzysłów data minus exercise minus level znak równości cudzysłów cudzysłów data minus resource minus id znak równości cudzysłów RWFr7HrkAitzk cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4D cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów data minus resource minus status znak równości cudzysłów cudzysłów id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4D cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów cp minus editor minus alt cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów style znak równości cudzysłów display dwukropek none cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny Ilustracja przedstawia dwie tabelę z dwoma wierszami kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Tabela pierwsza dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Pola trzecie i jedenaste przecinek z literami G przecinek G przecinek zaznaczono kolorem zielonym przecinek od czwartego do dziesiątego z literami C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A zaznaczono kolorem morskim kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek 0 przecinek 2 przecinek 1 przecinek minus 1 kropka reszta pól jest pusta kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Tabela druga dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Pole czwarte i dwunaste z literami C przecinek C zaznaczono kolorem granatowym kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek 0 przecinek 2 przecinek 1 przecinek minus 1 przecinek 0 kropka reszta pól jest pusta kropka otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów image minus link image minus fullscreen minus trigger cudzysłów href znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik RWFr7HrkAitzk prawy ukośnik 1665413747 prawy ukośnik IEMNSsyS3BeONBGiaqdHvE8QRQF3dQal kropka png cudzysłów data minus lightbox znak równości cudzysłów 677d0c75a98f1 cudzysłów data minus title znak równości cudzysłów ampersant lt średnik div class znak równości ampersant quot średnik figcaption podkreślnik content ampersant quot średnik data minus editor minus disabled ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik ampersant lt średnik div class znak równości ampersant quot średnik figure podkreślnik caption podkreślnik bibliography ampersant quot średnik data minus editor minus no minus parse ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik pl ampersant quot średnik ampersant gt średnik ampersant lt średnik span class znak równości ampersant quot średnik ref minus minus before ampersant quot średnik ampersant gt średnik Źródło dwukropek ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik en ampersant quot średnik ampersant gt średnik Contentplus ampersant lt średnik prawy ukośnik span ampersant gt średnik kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny picture zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów sr minus only cudzysłów zamknij nawias ostrokątny Kliknij przecinek aby uruchomić podgląd otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny img src znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik RWFr7HrkAitzk prawy ukośnik 1665413747 prawy ukośnik IEMNSsyS3BeONBGiaqdHvE8QRQF3dQal kropka png cudzysłów alt znak równości cudzysłów Ilustracja przedstawia dwie tabelę z dwoma wierszami kropka Tabela pierwsza dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka Pola trzecie i jedenaste przecinek z literami G przecinek G przecinek zaznaczono kolorem zielonym przecinek od czwartego do dziesiątego z literami C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A zaznaczono kolorem morskim kropka W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek 0 przecinek 2 przecinek 1 przecinek minus 1 kropka reszta pól jest pusta kropka Tabela druga dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka Pole czwarte i dwunaste z literami C przecinek C zaznaczono kolorem granatowym kropka W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek 0 przecinek 2 przecinek 1 przecinek minus 1 przecinek 0 kropka reszta pól jest pusta kropka cudzysłów title znak równości cudzysłów cudzysłów class znak równości cudzysłów figure podkreślnik img cp minus gallery minus set minus size cudzysłów tabindex znak równości cudzysłów 0 cudzysłów aria minus haspopup znak równości cudzysłów true cudzysłów role znak równości cudzysłów img cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik picture zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny figcaption class znak równości cudzysłów figure podkreślnik caption cudzysłów data minus editor minus disabled znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów figure podkreślnik caption podkreślnik bibliography cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów ref minus minus before cudzysłów zamknij nawias ostrokątny Źródło dwukropek otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów en cudzysłów zamknij nawias ostrokątny Contentplus otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figcaption zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figure zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik section zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4E cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4E cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny strong zamknij nawias ostrokątny Krok 10 otwórz nawias ostrokątny prawy ukośnik strong zamknij nawias ostrokątny dwukropek otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4G cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4G cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny Szerokość znalezionego prefikso‑sufiksu to 2 kropka Jako że osiągnęliśmy koniec wzorca i nie mamy z czym porównać elementu cudzysłów A cudzysłów przecinek możemy założyć przecinek że zawsze jest on inny od elementu przecinek z którym byśmy go porównywali kropka W rzeczywistości algorytm sprawdza moment przecinek w którym dochodzimy do końca wzorca kropka W takiej sytuacji do tablicy wstawiamy szerokość prefikso‑sufiksu kropka otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny section data minus block minus name znak równości cudzysłów ResourceElement cudzysłów data minus block minus resolved minus by znak równości cudzysłów media cudzysłów data minus editor minus block znak równości cudzysłów cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus editor minus params znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus specifier minus resolvedby znak równości cudzysłów cudzysłów data minus specifier minus type znak równości cudzysłów media cudzysłów data minus specifier minus type minus main znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus alternative znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus value znak równości cudzysłów cudzysłów zamknij nawias ostrokątny R1YYdNUvIqzfn otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny div data minus editor minus block minus content znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny figure class znak równości cudzysłów figure image cp minus image cudzysłów data minus exercise minus level znak równości cudzysłów cudzysłów data minus resource minus id znak równości cudzysłów R1YYdNUvIqzfn cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4H cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów data minus resource minus status znak równości cudzysłów cudzysłów id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4H cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów cp minus editor minus alt cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów style znak równości cudzysłów display dwukropek none cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny Ilustracja przedstawia dwie tabelę z dwoma wierszami kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Tabela pierwsza dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Pola trzecie i jedenaste przecinek z literami G przecinek G oraz pola czwarte i dwunaste z literami C przecinek C zaznaczono kolorem zielonym przecinek od piątego do dziesiątego z literami A przecinek T przecinek G przecinek C przecinek G przecinek A zaznaczono kolorem morskim kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek 0 przecinek 2 przecinek 1 przecinek minus 1 przecinek 0 reszta pól jest pusta kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Tabela druga dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Pole piąte z literą przecinek A zaznaczono kolorem granatowym kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek 0 przecinek 2 przecinek 1 przecinek minus 1 przecinek 0 przecinek 2 kropka otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów image minus link image minus fullscreen minus trigger cudzysłów href znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik R1YYdNUvIqzfn prawy ukośnik 1665413747 prawy ukośnik 1v91AXei733590xv0Q4ne9urtC9SEwYW kropka png cudzysłów data minus lightbox znak równości cudzysłów 677d0c75aaa6d cudzysłów data minus title znak równości cudzysłów ampersant lt średnik div class znak równości ampersant quot średnik figcaption podkreślnik content ampersant quot średnik data minus editor minus disabled ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik ampersant lt średnik div class znak równości ampersant quot średnik figure podkreślnik caption podkreślnik bibliography ampersant quot średnik data minus editor minus no minus parse ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik pl ampersant quot średnik ampersant gt średnik ampersant lt średnik span class znak równości ampersant quot średnik ref minus minus before ampersant quot średnik ampersant gt średnik Źródło dwukropek ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik en ampersant quot średnik ampersant gt średnik Contentplus ampersant lt średnik prawy ukośnik span ampersant gt średnik kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny picture zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów sr minus only cudzysłów zamknij nawias ostrokątny Kliknij przecinek aby uruchomić podgląd otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny img src znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik R1YYdNUvIqzfn prawy ukośnik 1665413747 prawy ukośnik 1v91AXei733590xv0Q4ne9urtC9SEwYW kropka png cudzysłów alt znak równości cudzysłów Ilustracja przedstawia dwie tabelę z dwoma wierszami kropka Tabela pierwsza dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka Pola trzecie i jedenaste przecinek z literami G przecinek G oraz pola czwarte i dwunaste z literami C przecinek C zaznaczono kolorem zielonym przecinek od piątego do dziesiątego z literami A przecinek T przecinek G przecinek C przecinek G przecinek A zaznaczono kolorem morskim kropka W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek 0 przecinek 2 przecinek 1 przecinek minus 1 przecinek 0 reszta pól jest pusta kropka Tabela druga dwukropek Wiersz pierwszy dwukropek W przecinek puste przecinek G przecinek C przecinek A przecinek T przecinek G przecinek C przecinek G przecinek A przecinek G przecinek C kropka Pole piąte z literą przecinek A zaznaczono kolorem granatowym kropka W drugim wierszu kolejno dwukropek T przecinek minus 1 przecinek 0 przecinek 0 przecinek 0 przecinek minus 1 przecinek 0 przecinek 2 przecinek 1 przecinek minus 1 przecinek 0 przecinek 2 kropka cudzysłów title znak równości cudzysłów cudzysłów class znak równości cudzysłów figure podkreślnik img cp minus gallery minus set minus size cudzysłów tabindex znak równości cudzysłów 0 cudzysłów aria minus haspopup znak równości cudzysłów true cudzysłów role znak równości cudzysłów img cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik picture zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny figcaption class znak równości cudzysłów figure podkreślnik caption cudzysłów data minus editor minus disabled znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów figure podkreślnik caption podkreślnik bibliography cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów ref minus minus before cudzysłów zamknij nawias ostrokątny Źródło dwukropek otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów en cudzysłów zamknij nawias ostrokątny Contentplus otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figcaption zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figure zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik section zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4I cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4I cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny Ostateczny algorytm może być zapisany za pomocą następującego pseudokodu kropka Jako otwórz nawias ostrokątny code style znak równości cudzysłów white minus space dwukropek pre średnik cudzysłów data minus inline znak równości cudzysłów cudzysłów zamknij nawias ostrokątny W otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny oznaczono wzorzec przecinek otwórz nawias ostrokątny code style znak równości cudzysłów white minus space dwukropek pre średnik cudzysłów data minus inline znak równości cudzysłów cudzysłów zamknij nawias ostrokątny T otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny to tablica częściowych dopasowań kropka Zwróćmy uwagę przecinek że różni się od metody MP tylko jedną dodatkową konstrukcją warunkową kropka otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów cp minus editor minus alt wcag minus alternative minus text sr minus only has minus icon minus container animation minus ready animated cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny Linia 1 kropka funkcja budowaTablicyKMP otwórz nawias okrągły W zamknij nawias okrągły kropka otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny. Linia 18. Linia 2 kropka rozmiarT znak równości długość otwórz nawias okrągły W zamknij nawias okrągły plus 1 kropka. Linia 19. Linia 3 kropka stwórz tablicę T o długości rozmiarT kropka. Linia 20. Linia 4 kropka poz znak równości minus 1 kropka. Linia 21. Linia 5 kropka T otwórz nawias kwadratowy 0 zamknij nawias kwadratowy znak równości minus 1 kropka. Linia 22. Linia 7 kropka prawy ukośnik prawy ukośnik dla każdego kolejnego prefiksu wzorca kropka. Linia 23. Linia 8 kropka dla i znak równości 1 przecinek 2 przecinek kropka kropka kropka przecinek rozmiarT minus 1 wykonuj dwukropek kropka. Linia 24. Linia 9 kropka prawy ukośnik prawy ukośnik dopóki możesz znaleźć dłuższy prefikso minus sufiks kropka. Linia 25. Linia 10 kropka dopóki poz zamknij nawias ostrokątny minus 1 i W otwórz nawias kwadratowy poz zamknij nawias kwadratowy wykrzyknik znak równości W otwórz nawias kwadratowy i minus 1 zamknij nawias kwadratowy wykonuj dwukropek kropka. Linia 26. Linia 11 kropka poz znak równości T otwórz nawias kwadratowy poz zamknij nawias kwadratowy kropka. Linia 27. Linia 12 kropka poz plus znak równości 1 kropka. Linia 28. Linia 14 kropka prawy ukośnik prawy ukośnik usprawnienie kropka. Linia 29. Linia 16 kropka prawy ukośnik prawy ukośnik jeżeli element występujący po znalezionym kropka. Linia 30. Linia 17 kropka prawy ukośnik prawy ukośnik prefikso minus sufiksie jest taki sam jak po prefiksie kropka. Linia 31. Linia 18 kropka jeżeli i znak równości znak równości rozmiarT minus 1 LUB W otwórz nawias kwadratowy i zamknij nawias kwadratowy wykrzyknik znak równości W otwórz nawias kwadratowy poz zamknij nawias kwadratowy kropka. Linia 32. Linia 19 kropka prawy ukośnik prawy ukośnik zapisz szerokość znalezionego prefikso minus sufiksu kropka. Linia 33. Linia 20 kropka T otwórz nawias kwadratowy i zamknij nawias kwadratowy znak równości poz kropka. Linia 34. Linia 21 kropka w przeciwnym wypadku kropka. Linia 35. Linia 22 kropka prawy ukośnik prawy ukośnik kolejny element tablicy będzie tym samym przecinek kropka. Linia 36. Linia 23 kropka prawy ukośnik prawy ukośnik co element na pozycji równej szerokości kropka. Linia 37. Linia 24 kropka prawy ukośnik prawy ukośnik prefikso minus sufiksu kropka. Linia 38. Linia 25 kropka T otwórz nawias kwadratowy i zamknij nawias kwadratowy znak równości T otwórz nawias kwadratowy poz zamknij nawias kwadratowy kropka. Linia 39. Linia 27 kropka zwróć T kropka.
Linia 1. funkcja budowaTablicyKMP otwórz nawias okrągły W zamknij nawias okrągły. Linia 2. rozmiarT znak równości długość otwórz nawias okrągły W zamknij nawias okrągły plus 1. Linia 3. stwórz tablicę T o długości rozmiarT. Linia 4. poz znak równości minus 1. Linia 5. T otwórz nawias kwadratowy 0 zamknij nawias kwadratowy znak równości minus 1. Linia 6. otwórz nawias ostrokątny code style znak równości cudzysłów white minus space dwukropek pre średnik cudzysłów data minus inline zamknij nawias ostrokątny prawy ukośnik prawy ukośnik dla każdego kolejnego prefiksu wzorca. Linia 7. dla i znak równości 1 przecinek 2 przecinek kropka kropka kropka przecinek rozmiarT minus 1 wykonuj dwukropek. Linia 8. prawy ukośnik prawy ukośnik dopóki możesz znaleźć dłuższy prefikso minus sufiks. Linia 9. dopóki poz ampersant gt średnik minus 1 i W otwórz nawias kwadratowy poz zamknij nawias kwadratowy wykrzyknik znak równości W otwórz nawias kwadratowy i minus 1 zamknij nawias kwadratowy wykonuj dwukropek. Linia 10. poz znak równości T otwórz nawias kwadratowy poz zamknij nawias kwadratowy. Linia 11. poz plus znak równości 1. Linia 13. prawy ukośnik prawy ukośnik usprawnienie. Linia 15. prawy ukośnik prawy ukośnik jeżeli element występujący po znalezionym. Linia 16. prawy ukośnik prawy ukośnik prefikso minus sufiksie jest taki sam jak po prefiksie. Linia 17. jeżeli i znak równości znak równości rozmiarT minus 1 LUB W otwórz nawias kwadratowy i zamknij nawias kwadratowy wykrzyknik znak równości W otwórz nawias kwadratowy poz zamknij nawias kwadratowy. Linia 18. prawy ukośnik prawy ukośnik zapisz szerokość znalezionego prefikso minus sufiksu. Linia 19. T otwórz nawias kwadratowy i zamknij nawias kwadratowy znak równości poz. Linia 20. w przeciwnym wypadku. Linia 21. prawy ukośnik prawy ukośnik kolejny element tablicy będzie tym samym przecinek. Linia 22. prawy ukośnik prawy ukośnik co element na pozycji równej szerokości. Linia 23. prawy ukośnik prawy ukośnik prefikso minus sufiksu. Linia 24. T otwórz nawias kwadratowy i zamknij nawias kwadratowy znak równości T otwórz nawias kwadratowy poz zamknij nawias kwadratowy. Linia 26. zwróć T otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów codemirror minus holder cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror cm minus s minus default cudzysłów translate znak równości cudzysłów no cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów overflow dwukropek hidden średnik position dwukropek relative średnik width dwukropek 3px średnik height dwukropek 0px średnik top dwukropek 4px średnik left dwukropek 34px średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny textarea style znak równości cudzysłów position dwukropek absolute średnik bottom dwukropek minus 1em średnik padding dwukropek 0px średnik width dwukropek 1px średnik height dwukropek 1em średnik min minus height dwukropek 1em średnik outline dwukropek none średnik cudzysłów wrap znak równości cudzysłów off cudzysłów autocorrect znak równości cudzysłów off cudzysłów autocapitalize znak równości cudzysłów none cudzysłów spellcheck znak równości cudzysłów false cudzysłów readonly znak równości cudzysłów cudzysłów tabindex znak równości cudzysłów 0 cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik textarea zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus vscrollbar cudzysłów tabindex znak równości cudzysłów minus 1 cudzysłów cm minus not minus content znak równości cudzysłów true cudzysłów style znak równości cudzysłów display dwukropek block średnik bottom dwukropek 0px średnik width dwukropek 18px średnik visibility dwukropek hidden średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów min minus width dwukropek 1px średnik height dwukropek 786px średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus hscrollbar cudzysłów tabindex znak równości cudzysłów minus 1 cudzysłów cm minus not minus content znak równości cudzysłów true cudzysłów style znak równości cudzysłów height dwukropek 18px średnik visibility dwukropek hidden średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów height dwukropek 100 procent średnik min minus height dwukropek 1px średnik width dwukropek 0px średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus scrollbar minus filler cudzysłów cm minus not minus content znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus filler cudzysłów cm minus not minus content znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus scroll cudzysłów tabindex znak równości cudzysłów minus 1 cudzysłów draggable znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus sizer cudzysłów style znak równości cudzysłów margin minus left dwukropek 30px średnik margin minus bottom dwukropek 0px średnik border minus right minus width dwukropek 50px średnik min minus height dwukropek 766px średnik min minus width dwukropek 577 kropka 35px średnik padding minus right dwukropek 0px średnik padding minus bottom dwukropek 0px średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik top dwukropek 0px średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus lines cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik outline dwukropek none średnik cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus measure cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line minus like cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span zamknij nawias ostrokątny xxxxxxxxxx otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus measure cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik z minus index dwukropek 1 średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus cursors cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus cursor cudzysłów style znak równości cudzysłów left dwukropek 4px średnik top dwukropek 0px średnik height dwukropek 28 kropka 0667px średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus code cudzysłów role znak równości cudzysłów presentation cudzysłów style znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 1 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny funkcja budowaTablicyKMP otwórz nawias okrągły W zamknij nawias okrągły otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 2 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny rozmiarT znak równości długość otwórz nawias okrągły W zamknij nawias okrągły plus 1 otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 3 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny stwórz tablicę T o długości rozmiarT otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 4 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny poz znak równości minus 1 otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 5 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny T otwórz nawias kwadratowy 0 zamknij nawias kwadratowy znak równości minus 1 otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 6 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span cm minus text znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 7 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów cm minus tab cudzysłów role znak równości cudzysłów presentation cudzysłów cm minus text znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny prawy ukośnik prawy ukośnik dla każdego kolejnego prefiksu wzorca otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 8 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny dla i znak równości 1 przecinek 2 przecinek kropka kropka kropka przecinek rozmiarT minus 1 wykonuj dwukropek otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 9 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów cm minus tab cudzysłów role znak równości cudzysłów presentation cudzysłów cm minus text znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny prawy ukośnik prawy ukośnik dopóki możesz znaleźć dłuższy prefikso minus sufiks otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 10 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny dopóki poz ampersant gt średnik minus 1 i W otwórz nawias kwadratowy poz zamknij nawias kwadratowy wykrzyknik znak równości W otwórz nawias kwadratowy i minus 1 zamknij nawias kwadratowy wykonuj dwukropek otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 11 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny poz znak równości T otwórz nawias kwadratowy poz zamknij nawias kwadratowy otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 12 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny poz plus znak równości 1 otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 13 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span cm minus text znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 14 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów cm minus tab cudzysłów role znak równości cudzysłów presentation cudzysłów cm minus text znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów cm minus tab cudzysłów role znak równości cudzysłów presentation cudzysłów cm minus text znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny prawy ukośnik prawy ukośnik usprawnienie otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 15 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 16 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny prawy ukośnik prawy ukośnik jeżeli element występujący po znalezionym otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 17 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny prawy ukośnik prawy ukośnik prefikso minus sufiksie jest taki sam jak po prefiksie otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 18 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów cm minus tab cudzysłów role znak równości cudzysłów presentation cudzysłów cm minus text znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów cm minus tab cudzysłów role znak równości cudzysłów presentation cudzysłów cm minus text znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny jeżeli i znak równości znak równości rozmiarT minus 1 LUB W otwórz nawias kwadratowy i zamknij nawias kwadratowy wykrzyknik znak równości W otwórz nawias kwadratowy poz zamknij nawias kwadratowy otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 19 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów cm minus tab cudzysłów role znak równości cudzysłów presentation cudzysłów cm minus text znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny prawy ukośnik prawy ukośnik zapisz szerokość znalezionego prefikso minus sufiksu otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 20 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny T otwórz nawias kwadratowy i zamknij nawias kwadratowy znak równości poz otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 21 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny w przeciwnym wypadku otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 22 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów cm minus tab cudzysłów role znak równości cudzysłów presentation cudzysłów cm minus text znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny prawy ukośnik prawy ukośnik kolejny element tablicy będzie tym samym przecinek otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 23 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny prawy ukośnik prawy ukośnik co element na pozycji równej szerokości otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 24 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny prawy ukośnik prawy ukośnik prefikso minus sufiksu otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 25 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny T otwórz nawias kwadratowy i zamknij nawias kwadratowy znak równości T otwórz nawias kwadratowy poz zamknij nawias kwadratowy otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 26 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span cm minus text znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek relative średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter minus wrapper cudzysłów style znak równości cudzysłów left dwukropek minus 30px średnik cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus linenumber CodeMirror minus gutter minus elt cudzysłów style znak równości cudzysłów left dwukropek 0px średnik width dwukropek 21px średnik cudzysłów zamknij nawias ostrokątny 27 otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny pre class znak równości cudzysłów CodeMirror minus line cudzysłów role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span role znak równości cudzysłów presentation cudzysłów zamknij nawias ostrokątny zwróć T otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div style znak równości cudzysłów position dwukropek absolute średnik height dwukropek 50px średnik width dwukropek 1px średnik border minus bottom dwukropek 0px solid transparent średnik top dwukropek 766px średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutters cudzysłów style znak równości cudzysłów height dwukropek 816px średnik left dwukropek 0px średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów CodeMirror minus gutter CodeMirror minus linenumbers cudzysłów style znak równości cudzysłów width dwukropek 29px średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik pre zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figure zamknij nawias ostrokątny otwórz nawias ostrokątny h2 data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 5B cudzysłów id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 5B cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny Wykorzystanie tablicy częściowych dopasowań otwórz nawias ostrokątny span data minus editor minus params znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus specifier minus resolvedby znak równości cudzysłów cudzysłów data minus specifier minus type znak równości cudzysłów cudzysłów data minus specifier minus type minus main znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus alternative znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus value znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik h2 zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4N cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4N cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny Dlaczego budujemy tablicę częściowych dopasowań znak zapytania Wyobraźmy sobie prosty przykład przecinek w którym metodą naiwną próbujemy znaleźć dopasowanie wzorca otwórz nawias okrągły otwórz nawias ostrokątny code style znak równości cudzysłów white minus space dwukropek pre średnik cudzysłów data minus inline znak równości cudzysłów cudzysłów zamknij nawias ostrokątny AAB otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny zamknij nawias okrągły w tekście otwórz nawias okrągły otwórz nawias ostrokątny code style znak równości cudzysłów white minus space dwukropek pre średnik cudzysłów data minus inline znak równości cudzysłów cudzysłów zamknij nawias ostrokątny AAAAAAB otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny zamknij nawias okrągły kropka Dopasowania zaznaczamy na zielono kropka Czerwonym kolorem oznaczamy te próby przecinek które kończą się niepowodzeniem kropka otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny section data minus block minus name znak równości cudzysłów ResourceElement cudzysłów data minus block minus resolved minus by znak równości cudzysłów media cudzysłów data minus editor minus block znak równości cudzysłów cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus editor minus params znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus specifier minus resolvedby znak równości cudzysłów cudzysłów data minus specifier minus type znak równości cudzysłów media cudzysłów data minus specifier minus type minus main znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus alternative znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus value znak równości cudzysłów cudzysłów zamknij nawias ostrokątny R1Tz3dbWp8KYW otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny div data minus editor minus block minus content znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny figure class znak równości cudzysłów figure image cp minus image cudzysłów data minus exercise minus level znak równości cudzysłów cudzysłów data minus resource minus id znak równości cudzysłów R1Tz3dbWp8KYW cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4Q cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów data minus resource minus status znak równości cudzysłów cudzysłów id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4Q cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów cp minus editor minus alt cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów style znak równości cudzysłów display dwukropek none cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny Ilustracja przedstawia szukanie wzorca dwukropek AAB przecinek w ciągu liter dwukropek AAAAAAB kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Na samej górze umieszczono ciąg liter dwukropek AAAAAAB kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Poniżej znajduje się 15 linii gdzie dwukropek AAB przesuwane jest o jedną literę względem AAAAAAB kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii pierwszej dwukropek A podświetlone jest na zielono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii drugiej dwukropek drugie A podświetlone jest na zielono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii trzeciej dwukropek B podświetlone jest na czerwono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii czwartej dwukropek A podświetlone jest na zielono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii piątej dwukropek drugie A podświetlone jest na zielono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii szóstej dwukropek B podświetlone jest na czerwono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii siódmej dwukropek A podświetlone jest na zielono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii ósmej dwukropek drugie A podświetlone jest na zielono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii dziewiątej dwukropek B podświetlone jest na czerwono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii dziesiątej dwukropek A podświetlone jest na zielono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii jedenastej dwukropek drugie A podświetlone jest na zielono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii dwunastej dwukropek B podświetlone jest na czerwono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii trzynastej dwukropek A podświetlone jest na zielono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii czternastej dwukropek drugie A podświetlone jest na zielono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii piętnastej dwukropek B podświetlone jest na zielono kropka otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów image minus link image minus fullscreen minus trigger cudzysłów href znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik R1Tz3dbWp8KYW prawy ukośnik 1665413747 prawy ukośnik 2Y8WGNwA0fgX9tdZJ2xkeVaTFjjKl6iZ kropka png cudzysłów data minus lightbox znak równości cudzysłów 677d0c75ac587 cudzysłów data minus title znak równości cudzysłów ampersant lt średnik div class znak równości ampersant quot średnik figcaption podkreślnik content ampersant quot średnik data minus editor minus disabled ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik ampersant lt średnik div class znak równości ampersant quot średnik figure podkreślnik caption podkreślnik bibliography ampersant quot średnik data minus editor minus no minus parse ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik pl ampersant quot średnik ampersant gt średnik ampersant lt średnik span class znak równości ampersant quot średnik ref minus minus before ampersant quot średnik ampersant gt średnik Źródło dwukropek ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik en ampersant quot średnik ampersant gt średnik Contentplus ampersant lt średnik prawy ukośnik span ampersant gt średnik kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny picture zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów sr minus only cudzysłów zamknij nawias ostrokątny Kliknij przecinek aby uruchomić podgląd otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny img src znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik R1Tz3dbWp8KYW prawy ukośnik 1665413747 prawy ukośnik 2Y8WGNwA0fgX9tdZJ2xkeVaTFjjKl6iZ kropka png cudzysłów alt znak równości cudzysłów Ilustracja przedstawia szukanie wzorca dwukropek AAB przecinek w ciągu liter dwukropek AAAAAAB kropka Na samej górze umieszczono ciąg liter dwukropek AAAAAAB kropka Poniżej znajduje się 15 linii gdzie dwukropek AAB przesuwane jest o jedną literę względem AAAAAAB kropka W linii pierwszej dwukropek A podświetlone jest na zielono kropka W linii drugiej dwukropek drugie A podświetlone jest na zielono kropka W linii trzeciej dwukropek B podświetlone jest na czerwono kropka W linii czwartej dwukropek A podświetlone jest na zielono kropka W linii piątej dwukropek drugie A podświetlone jest na zielono kropka W linii szóstej dwukropek B podświetlone jest na czerwono kropka W linii siódmej dwukropek A podświetlone jest na zielono kropka W linii ósmej dwukropek drugie A podświetlone jest na zielono kropka W linii dziewiątej dwukropek B podświetlone jest na czerwono kropka W linii dziesiątej dwukropek A podświetlone jest na zielono kropka W linii jedenastej dwukropek drugie A podświetlone jest na zielono kropka W linii dwunastej dwukropek B podświetlone jest na czerwono kropka W linii trzynastej dwukropek A podświetlone jest na zielono kropka W linii czternastej dwukropek drugie A podświetlone jest na zielono kropka W linii piętnastej dwukropek B podświetlone jest na zielono kropka cudzysłów title znak równości cudzysłów cudzysłów class znak równości cudzysłów figure podkreślnik img cp minus gallery minus set minus size cudzysłów tabindex znak równości cudzysłów 0 cudzysłów aria minus haspopup znak równości cudzysłów true cudzysłów role znak równości cudzysłów img cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik picture zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny figcaption class znak równości cudzysłów figure podkreślnik caption cudzysłów data minus editor minus disabled znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów figure podkreślnik caption podkreślnik bibliography cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów ref minus minus before cudzysłów zamknij nawias ostrokątny Źródło dwukropek otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów en cudzysłów zamknij nawias ostrokątny Contentplus otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figcaption zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figure zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik section zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4R cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4R cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny Już po pierwszej próbie dopasowania widoczne jest przecinek że kolejną próbę dopasowania możemy rozpocząć przecinek pomijając sprawdzenie pierwszego znaku kropka Wiemy bowiem przecinek że drugi znak jest taki sam jak pierwszy przecinek a drugi w tym miejscu już pasował kropka Optymalne dopasowywanie wyglądałoby w następujący sposób dwukropek otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny section data minus block minus name znak równości cudzysłów ResourceElement cudzysłów data minus block minus resolved minus by znak równości cudzysłów media cudzysłów data minus editor minus block znak równości cudzysłów cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus editor minus params znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus specifier minus resolvedby znak równości cudzysłów cudzysłów data minus specifier minus type znak równości cudzysłów media cudzysłów data minus specifier minus type minus main znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus alternative znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span data minus value znak równości cudzysłów cudzysłów zamknij nawias ostrokątny R1I5GNluWq20I otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny div data minus editor minus block minus content znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny figure class znak równości cudzysłów figure image cp minus image cudzysłów data minus exercise minus level znak równości cudzysłów cudzysłów data minus resource minus id znak równości cudzysłów R1I5GNluWq20I cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4S cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów data minus resource minus status znak równości cudzysłów cudzysłów id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4S cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów cp minus editor minus alt cudzysłów aria minus hidden znak równości cudzysłów true cudzysłów style znak równości cudzysłów display dwukropek none cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny Ilustracja przedstawia szukanie wzorca dwukropek AAB przecinek w ciągu liter dwukropek AAAAAAB kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Na samej górze umieszczono ciąg liter dwukropek AAAAAAB kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny Poniżej znajduje się 11 linii gdzie dwukropek AAB przesuwane jest o jedną literę względem AAAAAAB kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii pierwszej dwukropek A podświetlone jest na zielono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii drugiej dwukropek drugie A podświetlone jest na zielono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii trzeciej dwukropek B podświetlone jest na czerwono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii czwartej dwukropek drugie A podświetlone jest na zielono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii piątej dwukropek B podświetlone jest na czerwono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii szóstej dwukropek drugie A podświetlone jest na zielono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii siódmej dwukropek B podświetlone jest na czerwono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii ósmej dwukropek drugie A podświetlone jest na zielono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii dziewiątej dwukropek B podświetlone jest na czerwono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii dziesiątej dwukropek drugie A podświetlone jest na zielono kropka otwórz nawias ostrokątny br zamknij nawias ostrokątny W linii jedenastej dwukropek B podświetlone jest na zielono kropka otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów image minus link image minus fullscreen minus trigger cudzysłów href znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik R1I5GNluWq20I prawy ukośnik 1665413748 prawy ukośnik 110DIOvHq3Rkst9T9j2sifz2B5joTOYn kropka png cudzysłów data minus lightbox znak równości cudzysłów 677d0c75ad70d cudzysłów data minus title znak równości cudzysłów ampersant lt średnik div class znak równości ampersant quot średnik figcaption podkreślnik content ampersant quot średnik data minus editor minus disabled ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik ampersant lt średnik div class znak równości ampersant quot średnik figure podkreślnik caption podkreślnik bibliography ampersant quot średnik data minus editor minus no minus parse ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik pl ampersant quot średnik ampersant gt średnik ampersant lt średnik span class znak równości ampersant quot średnik ref minus minus before ampersant quot średnik ampersant gt średnik Źródło dwukropek ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik span lang znak równości ampersant quot średnik en ampersant quot średnik ampersant gt średnik Contentplus ampersant lt średnik prawy ukośnik span ampersant gt średnik kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka ampersant lt średnik prawy ukośnik span ampersant gt średnik ampersant lt średnik prawy ukośnik div ampersant gt średnik cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny picture zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów sr minus only cudzysłów zamknij nawias ostrokątny Kliknij przecinek aby uruchomić podgląd otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny img src znak równości cudzysłów https dwukropek prawy ukośnik prawy ukośnik static kropka zpe kropka gov kropka pl prawy ukośnik portal prawy ukośnik f prawy ukośnik res minus minimized prawy ukośnik R1I5GNluWq20I prawy ukośnik 1665413748 prawy ukośnik 110DIOvHq3Rkst9T9j2sifz2B5joTOYn kropka png cudzysłów alt znak równości cudzysłów Ilustracja przedstawia szukanie wzorca dwukropek AAB przecinek w ciągu liter dwukropek AAAAAAB kropka Na samej górze umieszczono ciąg liter dwukropek AAAAAAB kropka Poniżej znajduje się 11 linii gdzie dwukropek AAB przesuwane jest o jedną literę względem AAAAAAB kropka W linii pierwszej dwukropek A podświetlone jest na zielono kropka W linii drugiej dwukropek drugie A podświetlone jest na zielono kropka W linii trzeciej dwukropek B podświetlone jest na czerwono kropka W linii czwartej dwukropek drugie A podświetlone jest na zielono kropka W linii piątej dwukropek B podświetlone jest na czerwono kropka W linii szóstej dwukropek drugie A podświetlone jest na zielono kropka W linii siódmej dwukropek B podświetlone jest na czerwono kropka W linii ósmej dwukropek drugie A podświetlone jest na zielono kropka W linii dziewiątej dwukropek B podświetlone jest na czerwono kropka W linii dziesiątej dwukropek drugie A podświetlone jest na zielono kropka W linii jedenastej dwukropek B podświetlone jest na zielono kropka cudzysłów title znak równości cudzysłów cudzysłów class znak równości cudzysłów figure podkreślnik img cp minus gallery minus set minus size cudzysłów tabindex znak równości cudzysłów 0 cudzysłów aria minus haspopup znak równości cudzysłów true cudzysłów role znak równości cudzysłów img cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik picture zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny figcaption class znak równości cudzysłów figure podkreślnik caption cudzysłów data minus editor minus disabled znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów figure podkreślnik caption podkreślnik bibliography cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów ref minus minus before cudzysłów zamknij nawias ostrokątny Źródło dwukropek otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny span lang znak równości cudzysłów en cudzysłów zamknij nawias ostrokątny Contentplus otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny kropka pl Sp kropka z o kropka o kropka przecinek licencja dwukropek CC BY minus SA 3 kropka 0 kropka otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figcaption zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik figure zamknij nawias ostrokątny otwórz nawias ostrokątny span class znak równości cudzysłów dummy minus node cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik span zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik div zamknij nawias ostrokątny otwórz nawias ostrokątny prawy ukośnik section zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4T cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4T cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny Porównując inteligentne przeszukiwanie z metodą naiwną przecinek zaoszczędziliśmy cztery porównania kropka Być może nie jest to dużo przecinek jednak różnica zwiększa się wraz ze wzrostem długości tekstu oraz wzorca kropka otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny p id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4U cudzysłów data minus id znak równości cudzysłów DcT6FBT2u podkreślnik pl podkreślnik main podkreślnik podkreślnik 4U cudzysłów class znak równości cudzysłów has minus icon minus container animation minus ready animated cudzysłów zamknij nawias ostrokątny Algorytm wyszukiwania wzorca w tekście z wykorzystaniem tablicy dopasowań wygląda następująco kropka Warto zaznaczyć przecinek że działa on zarówno dla tablicy dopasowań metody MP przecinek jak i KMP przecinek jednak tablica znaleziona algorytmem KMP jest po prostu bardziej wydajna kropka Jako otwórz nawias ostrokątny code style znak równości cudzysłów white minus space dwukropek pre średnik cudzysłów data minus inline znak równości cudzysłów cudzysłów zamknij nawias ostrokątny W otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny oznaczono wzorzec przecinek a jako otwórz nawias ostrokątny code style znak równości cudzysłów white minus space dwukropek pre średnik cudzysłów data minus inline znak równości cudzysłów cudzysłów zamknij nawias ostrokątny S otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny – przeszukiwany tekst kropka otwórz nawias ostrokątny prawy ukośnik p zamknij nawias ostrokątny otwórz nawias ostrokątny div class znak równości cudzysłów cp minus editor minus alt wcag minus alternative minus text sr minus only has minus icon minus container animation minus ready animated cudzysłów data minus editor minus no minus parse znak równości cudzysłów cudzysłów lang znak równości cudzysłów pl cudzysłów zamknij nawias ostrokątny Linia 1 kropka funkcja szukajAlgorytmemKMP otwórz nawias okrągły W przecinek S zamknij nawias okrągły kropka otwórz nawias ostrokątny prawy ukośnik code zamknij nawias ostrokątny. Linia 28. Linia 2 kropka T znak równości budowaTablicyKMP otwórz nawias okrągły W zamknij nawias okrągły kropka. Linia 29. Linia 3 kropka b znak równości 0 kropka. Linia 30. Linia 4 kropka dla i znak równości 0 przecinek 1 przecinek kropka kropka kropka przecinek długość otwórz nawias okrągły S zamknij nawias okrągły minus 1 wykonuj dwukropek kropka. Linia 31. Linia 5 kropka dopóki b zamknij nawias ostrokątny minus 1 i W otwórz nawias kwadratowy b zamknij nawias kwadratowy wykrzyknik znak równości S otwórz nawias kwadratowy i zamknij nawias kwadratowy wykonuj dwukropek kropka. Linia 32. Linia 6 kropka b znak równości T otwórz nawias kwadratowy b zamknij nawias kwadratowy kropka. Linia 33. Linia 7 kropka b plus znak równości 1 kropka. Linia 34. Linia 8 kropka jeżeli b znak równości znak równości długość otwórz nawias okrągły W zamknij nawias okrągły dwukropek kropka. Linia 35. Linia 9 kropka zwróć i minus długość otwórz nawias okrągły W zamknij nawias okrągły plus 1 kropka. Linia 36. Linia 10 kropka zwróć minus 1 kropka. Linia 37. kratka kratka Słownik.