|
Обход дерева | ☑ | ||
|---|---|---|---|---|
|
0
mzelensky
12.04.12
✎
15:10
|
Доброго всем!
Вот такая задача. Есть дерево значений. К примеру 3 уровня вложенности (3-ти последний). Вопрос в том, как обойти последний уровень не в прямом порядке, а в обратном??? |
|||
|
1
zak555
12.04.12
✎
15:10
|
по индексу ?
|
|||
|
2
mzelensky
12.04.12
✎
15:11
|
(1) ну я тоже только этот вариант нашел...получить число строк и обойти с "количество-1" по "0".
|
|||
|
3
Рэйв
12.04.12
✎
15:12
|
(2)А чего тогда спрашиваешь если нашел?
|
|||
|
4
zak555
12.04.12
✎
15:12
|
(2) сформируй тогда запрос по "убываю"
|
|||
|
5
mzelensky
12.04.12
✎
15:14
|
(3) ну мож еще какой вариант есть?! :)
|
|||
|
6
DrShad
12.04.12
✎
15:15
|
а зачем такой обход нужен? может решается все гораздо проще?
|
|||
|
7
Kashemir
12.04.12
✎
15:28
|
Процедура ОбойтиДерево(Коллекция, Уровень = 0)
Уровень = Уровень + 1; Если Уровень = 3 Тогда Для Н = 1 по Коллекция.Строки.Количество() Цикл ИскомаяСтрока = КоллекцияСтроки[Коллекция.Строки.Количество() - Н]; КонецЦикла; Иначе Для Стр из Коллекция.Строки Цикл ОбойтиДерево(Стр, Уровень); КонецЦикла; КонецЕсли; КонецПроцедуры ДЗ = Новый ДеревоЗначений; // наполняем ДЗ ОбойтиДерево(ДЗ); |
|||
|
8
Kashemir
12.04.12
✎
15:29
|
+(7) Поправка: ОбойтиДерево(Коллекция, Знач Уровень = 0)
|
|||
|
9
Vladal
12.04.12
✎
15:35
|
(0) Посмотри, может, пригодится: http://infostart.ru/public/72380/
|
|||
|
10
Vladal
12.04.12
✎
15:35
|
Рекурсивный обход дерева значений с пересчетом иерархических итогов группировок
|
| Форум | Правила | Описание | Секции | Поиск |