Jasně. Takže když chci hledat v množině příjmení, tak to s O(1) jde, akorát na to potřebuju nějakých 24^max_len bitů pole.
Tak jo, tak jsme si zablbli a už toho necháme, ne?
Nepotřebuju tak velké pole, pokud vím, že příjmení bude maximálně N, můžu v konečném čase vyrobit perfektní hashovací funkci, která bude přijmení mapovat na číslo v intervalu 0..N-1 plus mínus autobus.
Pokud nevím, že bude příjmení maximálně N, nemůžu garantovat nic, protože nekonečnou paměť nemám k dispozici. Praktická omezující podmínka téměř vždy existuje. Hledání s maximální složitostí O(1) se bežně dělá, pokud je to potřeba.