Uma das vantagens de um Quadtree é que você não precisa dividir um nó em seus nós filhos, se todos os nós filhos contiverem as mesmas informações. Isso pode economizar bastante memória e acelerar o processamento.
Seguindo esse princípio, acho que faz mais sentido armazená-lo apenas no nó raiz (método # 2). Isso poderia economizar bastante memória e acho que também facilitaria o processamento. Por exemplo, se você tentasse encontrar interseções do círculo com uma linha que atravesse três dos nós da folha, seria necessário calcular a interseção separadamente para cada nó da folha ou lembre-se de que você já cruzou com esse círculo.
Por outro lado, se você tiver objetos em nós folha, isso poderá ajudá-lo a eliminar falsos positivos (objetos que você deve verificar se há interseção, porque eles estão no nó correto, mas na verdade não se cruzam).
Então, acho que ambas as abordagens têm seus usos e não tenho certeza de como escolher qual usar.
Eu provavelmente não usaria a abordagem nº 3, porque não vejo nenhum ponto positivo sobre isso.