lepsze rozwiązanie słownika

0

Cześć!

chciałbym was prosić o pomoc, mianowicie mam stworzyć program c++ i potrzebuje efektywniejszego rozwiązania od proponowanego. O to treść programu:
Celem zadania jest stworzenie programu realizującego słownik podpowiedzi analogiczny do słownika T9 używanego w wielu telefonach komórkowych przy pisaniu np. sms-ów. Na klawiaturze typowego (old) telefonu cyfrom 2-9 odpowiadają następujące litery:

2 = {A,B,C}
3 = {D,E,F}
4 = {G,H,I}
5 = {J,K,L}
6 = {M,N,O}
7 = {P,Q,R,S}
8 = {T,U,V}
9 = {W,X,Y,Z}

Użytkownik wprowadza kolejne cyfry, a program przegląda wbudowany słownik (bazę wyrazów) w poszukiwaniu wyrazu odpowiadającego ciągowi wprowadzonych cyfr. Przykład:

Użytkownik wprowadził: 568
Program odpowie: kot, lot (o ile te wyrazy są w bazie wyrazów)

Proponowane rozwiązanie:

  • Stworzenie listy elementów
  • Posortowanie listy według kodów cyfrowych słów
  • Wyszukiwanie binarne tak uporządkowanej listy

Jak to można zrobić lepie (szybsze działanie programu)?

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