Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.06.24;
Скачать: [xml.tar.bz2];

Вниз

Помогите с алгоритмом поиска...   Найти похожие ветки 

 
deras ©   (2007-05-31 23:17) [0]

Есть текстовый файл. Мне надо найти строку, которая содержит подстроку "[]" и в то же время "запомнить" предыдущую строку и следующую.


 
default ©   (2007-05-31 23:26) [1]

ну очевидное решение это читать текстовый файл построчно, храня на каждом этапе считывания строки значение текущей строки и предыдущей
на каждом этапе проверяем на "[]" текущую строку и если есть читаем ещё следующую строку и выходим


 
deras ©   (2007-05-31 23:32) [2]

>на каждом этапе проверяем на "[]" текущую строку и если есть читаем ещё следующую строку и выходим

уточняю вопрос. Если таких строк много и не надо выходить из цикла, а проверять далее?


 
default ©   (2007-05-31 23:36) [3]

примерный псевдокод

предыдущая строка = пусто
текущая строка = пусто
флаг успешности поиска = ложь
пока (не конец файл)
  предыдущая строка = текущая строка
  текущая строка = СчитатьИзФайлаСледующуюСтроку(имя файла)
  если (текущая строка содержит "[]) тогда
    третья строка = пусто
    если (не конец файла) то третья строка =    
           СчитатьИзФайлаСледующуюСтроку(имя файла)
    флаг успешности поиска = истина
    выйти из цикла "пока"
  конец если
конец пока

если (флаг успешности = истина) тогда ....


 
default ©   (2007-05-31 23:38) [4]

deras ©   (31.05.07 23:32) [2]
а файл большой, может в TStringList загрузить да и не париться?


 
default ©   (2007-05-31 23:43) [5]

и если таких строк может быть много то же никаких проблем, чуть потправить псевдокод и делов


 
deras ©   (2007-05-31 23:44) [6]

>а файл большой, может в TStringList загрузить да и не париться?

небольшой. Как реализовать загрузку в TStringList и упростит ли это алгоритм поиска?


 
default ©   (2007-05-31 23:49) [7]

deras ©   (31.05.07 23:44) [6]
алгоритм упростится
в данной случае думаю стоит обойтись без TStringList(хотя опять же зависит от того что за задача у тебя какие требования и тд....)
а задачу можно поподробней?


 
default ©   (2007-05-31 23:51) [8]

загрузка делается через TStringList.LoadFromFile



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.06.24;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.042 c
15-1179983146
Riply
2007-05-24 09:05
2007.06.24
Драйвер с именем " " (9 пробелов).


3-1175505786
NKT
2007-04-02 13:23
2007.06.24
Шифрование данных


2-1180802187
Nipel
2007-06-02 20:36
2007.06.24
finddialog


2-1180711141
WebSQLNeederr
2007-06-01 19:19
2007.06.24
Нужна информация по сокетам в Делфи 7 !!


15-1180254391
Vendict
2007-05-27 12:26
2007.06.24
Искусство программирования, том 4, выпуск 3.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский