Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.02.13;
Скачать: CL | DM;

Вниз

Как фильтровать дерево ? По шаблону.   Найти похожие ветки 

 
Кен ©   (2004-02-05 01:42) [0]

Список - понятно. Просто удаляю все строки не соответствующие шаблону и всё, а с деревом как быть ? Ведь тут надо все ветки обходить, пустые удалять, не пустые оставлять. Да ещё с рекурсиями ... Всё как-то сложно очень. Нет ли простого способа ? Может уже готовые функции для этого есть ?


 
Savage   (2004-02-05 03:20) [1]

Подробней задачку обрисуй


 
Кен ©   (2004-02-05 03:56) [2]

Надо оставить в дереве только те строки в которых содержится определённый текст. Остальные удалить. Как их грамотно удалить ?


 
TUser ©   (2004-02-05 11:42) [3]


> Надо оставить в дереве только те строки

Дерево состоит не из строк, а из нодов. Если нод Х надо удалить, то что надо делать с его чайлдами. Все ведь от задачи твоей зависит - чайлды можно тоже удалить, можно их переместить в другой нод, по каким-то тебе известным критериям выбираемый. Если надо удалить пустые ветки, то рекурсией. Типа

function IsFree(Node):boolean;
var f:boolean;
begin
f:=false;
foreach (знаю, что в паскале форича нет, но что имеется в виду - понятно) Chiled do
f:=f or IsFree(Child);
if not f then result:=true else begin
// Удалить нод
result:=false; end;
end;



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

Текущий архив: 2004.02.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.023 c
8-38975
Blacked
2003-10-14 01:37
2004.02.13
Как отследить окончание просмотра файла в TMediaPlayer?


6-38982
Ig
2003-12-10 21:40
2004.02.13
Про Интернет : найти/подключить/отключить


1-38782
turonix
2004-02-03 14:22
2004.02.13
Корректное отображение окон при смене разрешения


6-38984
Эрик
2003-12-11 08:50
2004.02.13
Как сконвертировать представление ip-адреса в формате IPv4?


14-39053
Piter
2004-01-19 19:13
2004.02.13
Какие компиляторы поддерживают C# ?