[問題] STL裡list刪除的問題
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) VC++ 2010
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
問題(Question):
我有一個樹狀結構 裡面存有10000多個節點
要做skyline查詢 共跑500次
每次查詢都有一個新的query point 然後從root開始查詢
例:http://ppt.cc/hO@7
查詢演算法裡我需要一個list<RST_Node*> skyline 紀錄可能為skyline的節點
這個list會用到push_back, pop_front, erase等函數
但是erase好像沒有把記憶體讓出來 導致沒辦法跑完500次查詢
請問這個狀況該怎麼處理?
餵入的資料(Input): R*-tree,500個query point
預期的正確結果(Expected Output): 跑完500次BFS DFS的搜尋
錯誤結果(Wrong Output): std::bad_alloc
程式碼(Code):(請善用置底文網頁, 記得排版)
補充說明(Supplement):
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.248.110.139
→
05/13 22:38, , 1F
05/13 22:38, 1F
→
05/13 22:40, , 2F
05/13 22:40, 2F
→
05/13 22:41, , 3F
05/13 22:41, 3F
→
05/14 00:30, , 4F
05/14 00:30, 4F
→
05/14 00:30, , 5F
05/14 00:30, 5F
→
05/14 00:31, , 6F
05/14 00:31, 6F
→
05/14 03:35, , 7F
05/14 03:35, 7F
→
05/14 03:36, , 8F
05/14 03:36, 8F
推
05/14 10:29, , 9F
05/14 10:29, 9F
→
05/14 10:29, , 10F
05/14 10:29, 10F