Quad Tree Algorithm