Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.08.2011, 18:05   #1
ImmortalAlexSan
Участник клуба
 
Аватар для ImmortalAlexSan
 
Регистрация: 13.01.2009
Сообщений: 1,353
По умолчанию Автодописывание слов

Вот есть TextBox, я начинаю писать слово "Ки..." он мне дописывает "Китай". Как это можно реализовать? Как это вообще правильно называется?
"Тебе то может на меня и насрать, но твои глаза меня обожают!"
ImmortalAlexSan вне форума Ответить с цитированием
Старый 23.08.2011, 18:25   #2
Kukurudza
Форумчанин
 
Регистрация: 02.06.2011
Сообщений: 282
По умолчанию

словарь нужен. по нему будешь искать подходящие слова, по ходу написания слова
Kukurudza вне форума Ответить с цитированием
Старый 23.08.2011, 21:26   #3
ImmortalAlexSan
Участник клуба
 
Аватар для ImmortalAlexSan
 
Регистрация: 13.01.2009
Сообщений: 1,353
По умолчанию

Как лучше этот словарь сделать? Обычный текстовый файл? Или что более сложнее но производительнее есть?
"Тебе то может на меня и насрать, но твои глаза меня обожают!"
ImmortalAlexSan вне форума Ответить с цитированием
Старый 23.08.2011, 22:20   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Речи идет о каком компиляторе? буилдере - тем есть VCL компоненты имеющие такую возможность.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 24.08.2011, 09:14   #5
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,543
По умолчанию

Цитата:
Сообщение от ImmortalAlexSan Посмотреть сообщение
Как лучше этот словарь сделать? Обычный текстовый файл? Или что более сложнее но производительнее есть?
Можно как сказал Stilet, можно и в текстовый файл, а можно и через базу данных.
Если работать с базой данных, это более громоздко, с точки зрения написания кода, но скорость будет выше. С текстовым файлом работать проще, но при большом размере словаря будут заметны подтормаживания.
Я поступил так. Разбил словарь на несколько текстовых файлов по алфавиту. При наборе первой буквы, открывался нужный файл, а уже в нём искалось слово. Это конечно компромиссный подход, но работало довольно шустро. Словарь - 10 тысяч слов.
Мог бы привести код, но он у меня где-то в архивах (писал года три назад). Искать некогда .
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder
Smitt&Wesson вне форума Ответить с цитированием
Старый 24.08.2011, 11:28   #6
ds.Dante
Старожил
 
Аватар для ds.Dante
 
Регистрация: 06.08.2009
Сообщений: 2,992
По умолчанию

Цитата:
Сообщение от ImmortalAlexSan Посмотреть сообщение
Или что более сложнее но производительнее есть?
Зная твою любовь к оптимизации, могу предположить, что ты хочешь улучшить производительность списка из 200 стран :) (или сколько их там на карте...)

Если слов и правда много, то можно просто сделать двоичный поиск по каждой букве (только не забудь сначала отсортировать словарь). Если словарь обновляется не очень часто, то должно быть очень быстро и не слишком сложно.
ds.Dante вне форума Ответить с цитированием
Старый 24.08.2011, 11:55   #7
SnX
Форумчанин
 
Регистрация: 30.10.2009
Сообщений: 114
По умолчанию

Можно использовать trie деревья.
SnX вне форума Ответить с цитированием
Старый 24.08.2011, 13:05   #8
ImmortalAlexSan
Участник клуба
 
Аватар для ImmortalAlexSan
 
Регистрация: 13.01.2009
Сообщений: 1,353
По умолчанию

Ребят, а вообще имеет смысл сразу словарь заполнять? Там не только страны будут, но и брэнды, модели и т.д. Но я так понимаю это нужно хранить в разных файлах. Страны я впринципе напишу, а вот насчет ТС (технических срадств) - это проблема, их много. Так что словарь часто будет обновляться...
Stilet, C# в MS VS, назвал бы компилятор, но не знаю, как посмотреть. Smitt&Wesson, если найдете код как-нибудь может быть случайно, дайте знать пожалуйста =)
ds.Dante о да, я параноик в этом плане двоичный поиск - это круто, но вот при добавлении набора символов в словарь, его нужно будет поставить на соответствующее место, как-то неудобно (проблема в частых обновлениях). А может метод кэширования подойдет?
SnX, прошу прощения, на работу нужно, прочту после обязательно.
Спасибо всем за отзывчивость.
"Тебе то может на меня и насрать, но твои глаза меня обожают!"
ImmortalAlexSan вне форума Ответить с цитированием
Старый 24.08.2011, 13:08   #9
HollyPaladin
Пользователь
 
Аватар для HollyPaladin
 
Регистрация: 29.11.2009
Сообщений: 51
По умолчанию

Можно взять какую-нибудь программу переводчик,разобраться в структуре файла со словами ,написать программу которая ищет в этом файле слово с в вхождением в него введенного в программе набора букв и выводит найдное слово.
HollyPaladin вне форума Ответить с цитированием
Старый 24.08.2011, 13:37   #10
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
C# в MS VS, назвал бы компилятор,
а вот вам с вопросом по шарпу нельзя было написать в соответственный раздел?(раз шарп то вопрос о компиле не стоит)
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Интерпретация 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