-
X-Received: by 10.49.127.198 with SMTP id ni6mr1627468qeb.23.1358457081053; Thu, 17
Jan 2013 13:11:21 -0800 (PST)
X-Received: by 10.49.127.198 with SMTP id ni6mr1627468qeb.23.1358457081053; Thu, 17
Jan 2013 13:11:21 -0800 (PST)
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!news.supermedia.pl!plix.pl!newsfeed2.plix.pl!feed.xsnews.nl!border-2.a
ms.xsnews.nl!feeder1.cambriumusenet.nl!feed.tweaknews.nl!212.27.60.9.MISMATCH!p
roxad.net!feeder2-2.proxad.net!nx02.iad01.newshosting.com!newshosting.com!69.16
.185.11.MISMATCH!npeer01.iad.highwinds-media.com!news.highwinds-media.com!feed-
me.highwinds-media.com!p13no1090256qai.0!news-out.google.com!k2ni675qap.0!nntp.
google.com!p13no1090251qai.0!postnews.google.com!glegroupsg2000goo.googlegroups
.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Thu, 17 Jan 2013 13:11:20 -0800 (PST)
In-Reply-To: <b...@g...com>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=89.229.34.123;
posting-account=xjvq9QoAAAATMPC2X3btlHd_LkaJo_rj
NNTP-Posting-Host: 89.229.34.123
References: <kceu17$8cf$1@node1.news.atman.pl>
<c...@g...com>
<kckmci$3s2$1@node1.news.atman.pl>
<f...@g...com>
<4...@g...com>
<6...@g...com>
<c...@g...com>
<9...@g...com>
<1...@g...com>
<2...@g...com>
<4...@g...com>
<6...@g...com>
<4...@g...com>
<b...@g...com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <b...@g...com>
Subject: Re: algorytm stringi
From: "M.M." <m...@g...com>
Injection-Date: Thu, 17 Jan 2013 21:11:21 +0000
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 3959
Xref: news-archive.icm.edu.pl pl.comp.programming:201688
[ ukryj nagłówki ]W dniu czwartek, 17 stycznia 2013 18:16:30 UTC+1 użytkownik firr kenobi napisał:
> co robi ten klucz? czy to identyfikator
> danego slowa (chunka) z ktorego mozna pozniej
> odtworzyc jego pozycje czy co to jest?
W przybliżeniu tak, to jest coś w rodzaju id
słowa (albo początku słowa). Potem takie id
można łatwo/szybko znaleźć. Średnia ilość operacji
jakie trzeba wykonać jest równa średniej ilości
kolizji w hash-table, czyli może być stała, w zależości
od szczegółów nawet rzędu O(1). Nie należy mylić tego
z czasem stałym, wyszukiwanie w zwiększającej się
pamięci nigdy nie będzie stałe, choćby dlatego że
sygnał musi pokonać dłuższą trasę, aby odczytać dane
z coraz bardziej oddalonej od procesora kości RAM.
Mamy np. tekst do wyszukania:
const char pattern[] = "ala";
Mamy tablicę kluczy:
const unsigned int keys[256] = {rand,rand...rand};
Czyli klucz testu "ala" będzie:
unsigned int key = keys[ 'a' ] ^ keys[ 'l' ] ^ keys[ 'a' ];
Potem mamy tekst który przeszukujemy:
const char text[] = "asalam";
Dla tego tekstu można policzyć kolejne klucze, dla kolejnych 3 zakowych
pod ciągów:
key0 = keys['a'] ^ keys['s'] ^ keys['a'];
key1 = keys['s'] ^ keys['a'] ^ keys['l'];
key2 = keys['a'] ^ keys['l'] ^ keys['a'];
key3 = keys['l'] ^ keys['a'] ^ keys['m'];
Klucz key2 jest tak samo liczony jak key, więc będzie miał taką
samą wartość, więc zostanie (szybko) odnaleziony w hash-table, więc
będziemy mieli pozycję równą 2 (licząc od zera), więc przeszukamy
tekst od pozycji dwa, więc zajdziemy tam pattern ala :D
> tez nie wiem ale z tego wynika ze z
> trzymaniem bolastego indeksu np wszystkich
> ciagow na miliardzie stron moglbybyc tem
> problem ze to byloby wieksze niz ten miliard
> stron - pewnie cos tam jest jedynie czesciowo poindeksowane
Trzymanie indeksu wiąże się z narzutem, ale czy istnieje
jakaś inna droga? Może jakiś lepszy indeks?
Pozdrawiam
Następne wpisy z tego wątku
- 20.01.13 14:28 firr kenobi
- 20.01.13 14:37 firr kenobi
Najnowsze wątki z tej grupy
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
Najnowsze wątki
- 2025-04-27 czy nieroby zablokują znowu Zakopiankę
- 2025-04-26 e-Doręczenia w praktyce.
- 2025-04-26 Warszawa => Konsultant Wiodący SAP PP <=
- 2025-04-26 Warszawa => Developer Microsoft Dynamics 365 Finance & Operations (D36
- 2025-04-26 Warszawa => Programista Microsoft Dynamics 365 Finance & Operations (D
- 2025-04-26 Środa Wielkopolska => SAP FI/CO Internal Consultant <=
- 2025-04-26 Patrole obywatelskie.
- 2025-04-26 Warszawa => Presales Engineer IT <=
- 2025-04-26 Gdynia => Przedstawiciel handlowy / KAM (branża TSL) <=
- 2025-04-26 Rudno => IT network administrator <=
- 2025-04-26 Dęblin => Node.js / Fullstack Developer <=
- 2025-04-25 Sprawdzić czy spółka ma sprawy w sądzie
- 2025-04-25 Solarny Palnik Wodorowy
- 2025-04-25 amperomierz w plusie
- 2025-04-25 nie wyłączam silnika