[C] Szukanie słów w słowniku.txt

0

Witam
Piszę program który będzie szukał słowa w słowniku i mowil czy takie słowo istnieje czy tez nie.

Jak najlepiej to zrobic? Na samym poczatku wczytywać plik(30MB) do tablicy czy mozna jakos szybciej to zrobic?

0

Czytaj linia po linii i sprawdzaj czy już znaleziono odpowiedni wyraz lub wczytuj grupami, powiedzmy po 1024 znaki i podziel cobie według jakiegoś znaku (np. \n) cofnij się do ostatniego pełnego znaku a w tablicy wyszukaj czy dane słowo istnieje. Sądzę jednak, że pomysł nr 1 będzie szybszy.

0

To jest złe podejście! Po prostu za wolne.
O wiele lepiej skorzystać z funkcji hash-ujących.

0

Żeby robić z danymi cokolwiek, musisz je mieć w pamięci. Wczytywanie danych z pliku jest dość czasochłonne. Najpierw wczytaj plik do tablicy (30 MB więcej w pamięci system nawet nie poczuje ), później możesz ją jeszcze przygotować ( np. posortować ). Wtedy samo wyszukiwanie będzie o wiele szybsze niż każdorazowe wczytywanie wyrazu, linii, bloku danych i sprawdzanie wyraz po wyrazie.

0

Ja zrozumiałem, że on szuka tylko 1 słowa. Jeśli większej ilości to hasztablice bez wątpienia.

1 użytkowników online, w tym zalogowanych: 0, gości: 1