unordered_map<unordered_map<int> >
和vector<vector<int> >
是否具有不同的应用程序或几乎相同的应用程序?
基于应用而不是时间和空间复杂性的差异。
答案 0 :(得分:0)
我不使用unordered_map
。不过,我确实使用map<int,edge>
和map<int,triangle>
来实现有翼的边缘结构,而不是vector<edge>
和vector<triangle>
,即使边缘和三角形的编号是从0开始而没有间隙,因为他们彼此指向。如果我使用vector<edge>
,并且向量已满,那么当我再添加一个边缘时,指向边缘的指针将失效,因为分配器会将向量移至更大的内存块中。