這題最後一筆測資一直TLE, 到底怎麼優化過去的...
我的優化方式:
1:建立一個pool, 蒐集被刪除的節點記憶體, 減少分配動態節點的時間
2:用priority_queue 維護距離名次, 當queue已經塞了k個距離, 加入節點前先檢查這次距離是否小於queue的top() ,有則加入並刪除多出的距離, 若否則不加入
3:當第K小距離小於目標和這節點的分割維度距離, 就不搜索另一子樹