php 中的排序数组

sorted array in php

在 c#、java 等许多语言中,我们已经对数组进行了排序!这意味着当我们向它添加一些元素时,它会根据排序方法在正确的索引中添加新元素...... 使用此算法插入元素太快了!

但据我所知,在 php 中,我们只能使用 ksort、sort 或类似的东西对数组进行排序,但我没有在 php 中找到排序数组之类的东西来提高管理性能我们希望始终排序的一个数组!

如果我弄清楚 ksort 是如何工作的,我可以自己编写排序数组,但我没有找到任何解决方案来按索引向数组添加项目...

有谁知道如何在 php 中实现排序数组?要么 有谁知道如何在我想要的任何索引中添加元素?


更新 1

我在 php 中需要这样的东西:https://www.tutorialsteacher.com/csharp/csharp-sortedlist

我有一个巨大的数组(大约 200 万行),我应该根据价格之类的东西对它进行排序!

现在我按 ksort 排序,但对性能有很大影响


更新 2

我想为我的加密货币兑换创建交易匹配引擎,现在我使用 redis 作为我的数据输入,但是当我在 php 数组中使用作为我的数据输入时,性能提高了大约 250 倍。

(在redis中我可以添加订单大约3.5k/s)

我测试了我的代码并发现 ksrot 占用了我大约 83% 的代码运行时间。现在我想像我所说的那样使用排序列表来提高我的表现。现在我可以用 ksort.

处理大约 930k/s 订单(添加数组,排序数组,迭代数组顶部)

最后我找到了解决方案,它是: SPL EXT 中的优先级队列 https://www.php.net/manual/en/class.splpriorityqueue.php

您可以将比较方法传递给它,它会按顺序存储!

我将创建某种基准以使用 usort 和优先级队列解决方案进行比较以做出更准确的决策:)

tnx @PtrTron 提出这个建议