|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
23.08.2011, 18:05 | #1 |
Участник клуба
Регистрация: 13.01.2009
Сообщений: 1,353
|
Автодописывание слов
Вот есть TextBox, я начинаю писать слово "Ки..." он мне дописывает "Китай". Как это можно реализовать? Как это вообще правильно называется?
"Тебе то может на меня и насрать, но твои глаза меня обожают!"
|
23.08.2011, 18:25 | #2 |
Форумчанин
Регистрация: 02.06.2011
Сообщений: 282
|
словарь нужен. по нему будешь искать подходящие слова, по ходу написания слова
|
23.08.2011, 21:26 | #3 |
Участник клуба
Регистрация: 13.01.2009
Сообщений: 1,353
|
Как лучше этот словарь сделать? Обычный текстовый файл? Или что более сложнее но производительнее есть?
"Тебе то может на меня и насрать, но твои глаза меня обожают!"
|
23.08.2011, 22:20 | #4 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Речи идет о каком компиляторе? буилдере - тем есть VCL компоненты имеющие такую возможность.
I'm learning to live...
|
24.08.2011, 09:14 | #5 | |
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
Цитата:
Если работать с базой данных, это более громоздко, с точки зрения написания кода, но скорость будет выше. С текстовым файлом работать проще, но при большом размере словаря будут заметны подтормаживания. Я поступил так. Разбил словарь на несколько текстовых файлов по алфавиту. При наборе первой буквы, открывался нужный файл, а уже в нём искалось слово. Это конечно компромиссный подход, но работало довольно шустро. Словарь - 10 тысяч слов. Мог бы привести код, но он у меня где-то в архивах (писал года три назад). Искать некогда .
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder |
|
24.08.2011, 11:28 | #6 |
Старожил
Регистрация: 06.08.2009
Сообщений: 2,992
|
Зная твою любовь к оптимизации, могу предположить, что ты хочешь улучшить производительность списка из 200 стран :) (или сколько их там на карте...)
Если слов и правда много, то можно просто сделать двоичный поиск по каждой букве (только не забудь сначала отсортировать словарь). Если словарь обновляется не очень часто, то должно быть очень быстро и не слишком сложно. |
24.08.2011, 11:55 | #7 |
Форумчанин
Регистрация: 30.10.2009
Сообщений: 114
|
Можно использовать trie деревья.
|
24.08.2011, 13:05 | #8 |
Участник клуба
Регистрация: 13.01.2009
Сообщений: 1,353
|
Ребят, а вообще имеет смысл сразу словарь заполнять? Там не только страны будут, но и брэнды, модели и т.д. Но я так понимаю это нужно хранить в разных файлах. Страны я впринципе напишу, а вот насчет ТС (технических срадств) - это проблема, их много. Так что словарь часто будет обновляться...
Stilet, C# в MS VS, назвал бы компилятор, но не знаю, как посмотреть. Smitt&Wesson, если найдете код как-нибудь может быть случайно, дайте знать пожалуйста =) ds.Dante о да, я параноик в этом плане двоичный поиск - это круто, но вот при добавлении набора символов в словарь, его нужно будет поставить на соответствующее место, как-то неудобно (проблема в частых обновлениях). А может метод кэширования подойдет? SnX, прошу прощения, на работу нужно, прочту после обязательно. Спасибо всем за отзывчивость.
"Тебе то может на меня и насрать, но твои глаза меня обожают!"
|
24.08.2011, 13:08 | #9 |
Пользователь
Регистрация: 29.11.2009
Сообщений: 51
|
Можно взять какую-нибудь программу переводчик,разобраться в структуре файла со словами ,написать программу которая ищет в этом файле слово с в вхождением в него введенного в программе набора букв и выводит найдное слово.
|
24.08.2011, 13:37 | #10 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Интерпретация 2 слов | Kasper1 | Свободное общение | 2 | 02.03.2011 01:34 |
Количество слов | romanzi | Общие вопросы Delphi | 1 | 19.02.2011 22:43 |
Дана строка, состоящая из нескольких слов. Найти количество слов, которые содержат хотя бы одну букву "А" | Mashaa | Помощь студентам | 13 | 09.12.2009 13:28 |
по вводу слов в массив и подсчёт введённых слов | -ushёl- | Общие вопросы C/C++ | 4 | 16.11.2009 00:45 |
Составить в алфавитном порядке список всех слов, встречающихся в тексте, и количество этих слов. | KAPAHDAW | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 17.02.2009 01:19 |