排序C++分布在多个帧中

Sorting in C++ distributed across several frames

本文关键字:C++ 分布 排序      更新时间:2023-10-16

在我正在开发的游戏中,我有大量数据存储在一个向量中,我想对这些数据进行排序,但在操作过程中不会影响游戏的性能。那么(在 STL 或其他算法中)是否存在一种异步算法,允许对任何数据向量进行排序,每帧的比较次数有限(每个都需要一些计算),并在 X 帧计算后提供结果?

你可以使用 std::p artial_sort 来做到这一点,每次迭代对小块向量进行排序。完成所有块后,您可以使用inplace_merge将排序的块成对合并在一起,并获得最终排序的向量。

框架是什么

意思?您可以使用 std::inplace_merge 拆分数据并列合并排序。