Intellisense korekcja błedów, algorytmy

0

Potrzebuje napisać program który będzie wyświetlał dostępne do wyboru opcje, podobnie do nowoczesnych IDE. Napisałem to za pomocą Trie i działa dość dobrze ale są dwa problemy, pierwszy zrobienie literówki powoduje że nic się nie wyświetla, i drugi ważniejszy. Powiedzmy że mamy że mamy o nazwie xxxxYyyyFull, xxxxYyyySmall itd. lub, BigXxxxYyyy, W pierwszej opcji podpowiedzi są bez użyteczne bo i tak trzeba wpisać prawię cała nazwę, lub na klikać się góra dół. Tak jest np przy obsłudze evenów typu PreviewMouseLeftButtomUp/down/click/ ect, osobiście mega mnie toi irytuje.
A w przypadku BigXxxxYyyy to człowiek jest tak skonstruowany że jak chciał coś zrobić z yyyyXXXX, to w pisze najpierw to nie szczęsne XxxxYyyy, i trie w tym przypadku nic nie pomoże.Np wszyscy nadają normalne nazwy, ale jeden kozak wali _ na początku ale ty o tym nie wiesz i szukasz tej zmiennej od widoku nie wiadomo gdzie i ile.
Za pomocą jakich szybkich algorytmów można to rozwiązać.
Programie który pisze jest desktopowy, lista poleceń(max kilka set) jest określana w momencie startu programu. Czas działania to najlepiej ~10-16ms max 30 ms jak jest dłużej to widać ze opóźnienie.

1

Odległość edycyjna + sortowanie leksykograficzne? Luźny pomysł, nie wiem, jak to się sprawdzi.
Jak próbowałeś to googlować?

0

Dzięki za odpowiedź, długości edycyjnej myślałem ale też nie wiem jak to się sprawdzi. Tylko weź to sprawdzaj, Bezsensu jest wymyślać koło na nowo coś takiego było już wiele razy pisane, a bez bawienia się w analizę składniową kodu to to nie jest chyba żadne rocket-science, i powinny być gdzieś jakieś informacje.

Tak, próbowałem, ale tak właściwie to nawet nie wiem co mam wpisać bo intelisens to nazwa technologi microsoftu i strasznie przykrywa wyniki:/ a innego słowa na to nie znam. Programy na codproject które przejrzałem są nie zbyt przydatne.

1
topik92 napisał(a):

Tak, próbowałem, ale tak właściwie to nawet nie wiem co mam wpisać bo intelisens to nazwa technologi microsoftu i strasznie przykrywa wyniki:/ a innego słowa na to nie znam. Programy na codproject które przejrzałem są nie zbyt przydatne.

Ogólnie to się zwie autocompletion, te tematy na SO http://stackoverflow.com/questions/1220099/how-does-code-completion-work http://stackoverflow.com/questions/7058724/how-to-create-an-efficient-auto-complete wyglądają zjadliwie.

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