【发布时间】:2011-07-12 10:16:16
【问题描述】:
我正在实现一种显示算法,我们可以根据它们的 z 顺序拥有多个窗口层,即我从最后一个 z 值开始并合并图像,直到我们在最佳。 要维护 z 值,您推荐哪种数据结构?
例如:如果 z-order 是 2 3 4 5 1 6 7 8 9 10(应用程序的索引)并且如果用户点击了应用程序 5 的窗口,那么我们需要将 5 移到前面,然后剩余顺序应该相同,即 5 2 3 4 1 6 7 8 9 10。
如果我使用向量,那么每次都重新排列元素(或复制值)似乎效率不高。 如果我使用 deque 那么 push_front 有一些明显的优势,但再次从以前的位置删除应用程序是问题所在。 如果我使用列表,那么每次我们都需要搜索元素并将其删除。 关于哪种数据结构对我的目的最有效的想法?
【问题讨论】:
-
你需要处理多少层?如果它的小常数因素可能占主导地位
-
目前没有。层数不超过 32