Не пытайтесь делать итеративно то, что легко сделать рекурсивно, , если вы не можете доказать , что рекурсивная версия либо недостаточна (например, переполнение стека), либомедленнее (что не произойдет, если вы не начнете переполнять свой стек, заставляя ОС либо расширять его, либо вывести его из строя).
Другими словами, в общем, используйте итерацию для линейных структур и рекурсию для древовидных структур.
По сравнению с рекурсией , итерационный метод был примерно в 3 раза медленнее на моей машине.Если вы можете быть уверены, что ваша глубина XML не превысит нескольких сотен вложений (которые я никогда не видел в реальных документах XML), то рекурсия не будет проблемой.
Итерировать - это человек;повторять, божественно.:)