Một trong những lợi thế của Quadtree là bạn không phải chia một nút thành các nút con của nó nếu tất cả các nút con sẽ chứa cùng một thông tin. Điều này có thể giúp bạn tiết kiệm rất nhiều bộ nhớ và có thể giúp xử lý nhanh hơn.
Theo nguyên tắc này, tôi nghĩ sẽ có ý nghĩa hơn khi chỉ lưu trữ nó trong nút gốc (phương thức # 2). Nó có thể giúp bạn tiết kiệm rất nhiều bộ nhớ và tôi nghĩ cũng sẽ giúp xử lý dễ dàng hơn. Ví dụ: nếu bạn đã cố gắng tìm các giao điểm của vòng tròn với một đường đi qua ba trong số các nút lá, bạn sẽ cần phải tính toán giao điểm riêng cho từng nút lá hoặc nhớ rằng bạn đã giao nhau với vòng tròn này.
Mặt khác, nếu bạn có các đối tượng trong các nút lá, nó có thể giúp bạn loại bỏ các kết quả dương tính giả (các đối tượng mà bạn phải kiểm tra giao lộ, vì chúng nằm trong nút chính xác, nhưng thực tế không giao nhau).
Vì vậy, tôi nghĩ rằng cả hai phương pháp đều có cách sử dụng và tôi không chắc chắn nên chọn cách sử dụng nào.
Tôi có lẽ sẽ không sử dụng cách tiếp cận # 3, vì tôi không thấy bất kỳ điều tích cực nào về nó.