Tôi cần phải tìm số phần tử trong cây bằng thuật toán lặp, nhưng tôi đang tìm mã rất khó viết.Lặp đi lặp lại qua cây để tìm kích thước
Cách tiếp cận của tôi là bắt đầu tại nút gốc và truy cập các nút con, sau đó là con của các nút con này, v.v.
Đây là mã tôi đã viết mà làm việc cho một cây nhỏ, nhưng không phải là một giải pháp thực tế bởi vì tôi cần phải thêm khối bổ sung đối với từng mức độ sâu:
// Start the counter at 1 because the root node counts
int size = 1;
for(ITree child1 : root) {
size++;
for(ITree child2 : child1) {
size++;
for(ITree child3 : child2) {
size++;
for(ITree child4 : child3) {
size++;
for(ITree child5 : child4) {
size++;
}
}
}
}
}
return size;
Tôi nghĩ rằng đây là một câu hỏi tương tự với câu hỏi của bạn: http://stackoverflow.com/questions/547622/counting-nodes-in-a-tree-in-java có lẽ bạn có thể tìm thấy một số câu trả lời ở đó. –
Tôi đã đọc nó trước đó và nó là hữu ích, nhưng cây này không phải là nhị phân và tôi cần phải làm điều đó lặp đi lặp lại. – Matt