(x(x_(x_x(О_о)x_x)_x)x)
64 / 56 / 6
Регистрация: 04.09.2010
Сообщений: 301
|
||||||||||||||||
1 | ||||||||||||||||
Рекурсивный алгоритм поиска файла на фтп09.04.2013, 00:26. Показов 2870. Ответов 9
Метки нет (Все метки)
Добрый вечер форумчане.Столкнулся с проблемой в понимании рекурсивного алгоритма поиска файла на фтп.
Для работы с фтп использую библиотеку BytesRoad.NetSuit. Код:
Есть иерархия dir1 --dir11 ---dir111 ----file111_1 ----file111_2 ---dir112 ----file112_1 --dir12 --dir13 dir2 --dir21 --dir22 Алгоритм доходит до dir111 и вместо того, что бы перейти на уровень выше и после перейти в dir112 он пытается перейти в каталог dir111/dir112. Методы для перехода вверх:
0
|
09.04.2013, 00:26 | |
Ответы с готовыми решениями:
9
Рекурсивный метод поиска файлов Рекурсивный алгоритм поиска перестановок Реализовать рекурсивный алгоритм поиска минимального элемента массива Нужен алгоритм поиска пути в этом лабиринте (будь то волновой алгоритм или алгоритм правой/левой руки ) |
Master of Orion
|
||||||
09.04.2013, 07:22 | 2 | |||||
Athlon_33_88, ну условие остановки должно быть хоть где-то. У вас логика неправильная. У вас же не линейный список, а дерево, причем сильноветвящееся, а значит, нужно что-то вроде того
0
|
(x(x_(x_x(О_о)x_x)_x)x)
64 / 56 / 6
Регистрация: 04.09.2010
Сообщений: 301
|
||||||
09.04.2013, 20:33 [ТС] | 3 | |||||
Метод апгрейдил, но он не работает.
Не могу понять, как задать условие, для перехода на уровень вверх...
0
|
(x(x_(x_x(О_о)x_x)_x)x)
64 / 56 / 6
Регистрация: 04.09.2010
Сообщений: 301
|
|
09.04.2013, 20:55 [ТС] | 5 |
это метод для перехода на уровень вверх (строчка была добавлена для эксперемента, но и с ней не работает).
В модернизированном методе все ветки возвращают значение, но алгоритм упорно пытается пытается перейти в директорию, которая находится на уровень выше.Если не ясно выражаюсь, то прошу прощения.Могу написать длинный пост с наиподробнейшим описанием проблемы.
0
|
Master of Orion
|
||||||
09.04.2013, 21:16 | 6 | |||||
Athlon_33_88, этот пункт не нужен. НИкуда переходить на уровень выше не надо. Перебираются все файлы, если там находится искомый файл, то он возвращается. Если нет, то эта процедура последовательно применяется ко всем папкам.
Добавлено через 14 минут Athlon_33_88, вот пример поиска в каталоге файла
1
|
(x(x_(x_x(О_о)x_x)_x)x)
64 / 56 / 6
Регистрация: 04.09.2010
Сообщений: 301
|
||||||
12.04.2013, 13:57 [ТС] | 7 | |||||
метод
Пример: есть папки /logs и /www, после проверки каталога logs алгоритм открывает logs/www , а не /www, по этому нужно вычислить момент, когда нужно клиенту подняться на уровень вверх
0
|
Master of Orion
|
|
12.04.2013, 14:49 | 8 |
Athlon_33_88, еще раз на те же грабли: вот точно такой же алгоритм, тоько ищет на компе, а не на ФТП. Где там кто куда поднимается на уровень выше? Покажите? Не нужно совать циклы в рекурсию, не нужно совать рекурсию в циклы, не мешайте одно с другим.
0
|
(x(x_(x_x(О_о)x_x)_x)x)
64 / 56 / 6
Регистрация: 04.09.2010
Сообщений: 301
|
||||||
12.04.2013, 21:30 [ТС] | 9 | |||||
Во всем разобрался, окончательный вариант метода:
0
|
Master of Orion
|
|
12.04.2013, 22:00 | 10 |
Бесполезно
Кликните здесь для просмотра всего текста
Вы уж лучше тогда блог заведите, а то у некоторых возникают мысли, что вы хотите послушать чье-то мнение, кроме своего
1
|
12.04.2013, 22:00 | |
12.04.2013, 22:00 | |
Помогаю со студенческими работами здесь
10
Программа фтп-клиент скачивает файл с большим размером, чем он есть на фтп-сервере рекурсивный алгоритм Рекурсивный алгоритм Рекурсивный алгоритм Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |