Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Конвертация txt таблицы в html (https://javascript.ru/forum/misc/2559-konvertaciya-txt-tablicy-v-html.html)

Kolyaj 16.01.2009 18:31

Тут и я, не зная английского, разобью второй столбец на два, а программа тем более.

К чему этот поиск вырожденных случаев, вероятность которых мала?

Kolyaj 16.01.2009 18:34

Цитата:

Сообщение от ZoNT
Согласно твоему алгоритму надо выделить память под ВСЕ строки и сравнивать ВСЕ пробелы! При сколько-нибудь большом кол-ве строк (несколько тысяч) комп помрёт от такого алгоритма...

1. Выделять память нужно только под позиции пробелов, причем их будет сначала столько, сколько в первой строке, потом только уменьшаться.
2. Пересечение двух отсортированных списков (а они будут сразу отсортированные) О(n).
3. Не надо бежать по всем строкам, достаточно некоторого разумного количества.
4. Есть еще варианты? Если нет -- придется использовать этот :)

ZoNT 16.01.2009 18:38

Да, этот вариант самый оптимальный, но и он не даст нормальной точности.

Kolyaj 16.01.2009 18:39

Тут и человек не даст нормальной точности.

ZoNT 16.01.2009 18:40

Вариант с нормальными разделителями столбцов дал бы 100% точность.

x-yuri 16.01.2009 18:40

Цитата:

Совсем наоборот! просто я говорю о том, что в данном случае задача малорешаема
ZoNT, эмпирические методы как раз и используются, когда задача не решается на 100%. И они позволяют задачу решить в большинстве случаев. Это же лучше, чем вообще не решить задачу?

ZoNT 16.01.2009 18:42

Правильное решение - избежать нерешаемых задач, то есть заранее спроектировать систему так, чтобы избежать таких ситуаций.

x-yuri 16.01.2009 18:48

по поводу эмпирических методов
Цитата:

– Саш, - ответил он ей в тон, тоже тихо и почти по-приятельски. - В мире полным-полно сущностей, с которыми нельзя договориться. Но люди как-то живут, верно?
p.s. т.е. ты считаешь, что можно _всегда_ предусмотреть все варианты и учесть все интересы?

ZoNT 16.01.2009 18:49

Нет, но можно выбрать удобные инструменты для работы. Зачем парсить такой вывод, который делает сиджиайка, если можно переписать сиджиайку, чтобы она ставила нормальные разделители?

x-yuri 16.01.2009 18:52

Цитата:

Сообщение от ZoNT (Сообщение 10911)
Нет, но можно выбрать удобные инструменты для работы. Зачем парсить такой вывод, который делает сиджиайка, если можно переписать сиджиайку, чтобы она ставила нормальные разделители?

это не всегда разумно (требуется намного больше усилий)


Часовой пояс GMT +3, время: 16:12.