Я реализую алгоритм отображения, в котором у нас может быть несколько слоев окон, основанных на их z-порядке, т.е. я начинаю с последнего z-значения и объединяю изображения, пока у нас не будет изображения с z-значением как 0 в Топ.
Чтобы сохранить z-значения, какую структуру данных вы рекомендуете?
Например: если z-порядок равен 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 имеет некоторое очевидное преимущество, но проблема заключается в том, чтобы снова удалить приложение из предыдущего положения.
Если я использую список, то каждый раз нам нужно искать элемент и удалять его.
Любые мысли о том, какая структура данных является наиболее эффективной для моих целей?