Để sao chép 2 cây nhị phân các bạn có thể làm như sau:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | void copy(Tree t, Tree &q, int pos) // pos == 0 ben trai, pos==1 ben phai { if (t == NULL) return; Node * p = getNode(t->info); if (q == NULL) q = p; else { if (pos == 0) q->pLeft = p; else q->pRight = p; } copy(t->pLeft, p, 0); // xay cay con ben trai copy(t->pRight, p, 1); // xay cay con ben phai } |
Để sao chép dễ dàng nhất, chúng ta bắt đầu sao chép từ trên xuống. 1. Ý tưởng thuật toán sao chép 2 cây nhị phân Mình sẽ khởi tạo Tree q = NULL (chính là đối tượng sẽ nhận […]
Continue reading