数组的操作数\u unique PHP
有人知道数组的操作数\u unique PHP,php,big-o,array-unique,Php,Big O,Array Unique,有人知道array\u unique()的Big O吗 我还没有看过源代码,但我可以想象它会循环遍历每个值并检查它是否在数组中,这将是O(n^2)这是正确的吗 谢谢这是O(nlogn),因为它使用排序而不是O(n^2)扫描 请注意,关键点是保留的。array_unique()首先对作为字符串处理的值进行排序,然后将保留每个值遇到的第一个键,并忽略以下所有键。这并不意味着将保留未排序数组中第一个相关值的键 引自 编辑:记住用谷歌搜索它,检查手册,检查现有问题,然后提问。分步骤总结,但我不太倾向于将
array\u unique()
的Big O
吗
我还没有看过源代码,但我可以想象它会循环遍历每个值并检查它是否在数组中,这将是O(n^2)
这是正确的吗
谢谢这是O(nlogn)
,因为它使用排序而不是O(n^2)
扫描
请注意,关键点是保留的。array_unique()首先对作为字符串处理的值进行排序,然后将保留每个值遇到的第一个键,并忽略以下所有键。这并不意味着将保留未排序数组中第一个相关值的键
引自
编辑:记住用谷歌搜索它,检查手册,检查现有问题,然后提问。分步骤总结,但我不太倾向于将你的问题标记为该问题的重复,因为它问的是完全不同的问题:)相关问题/答案:它用谷歌搜索并检查了手册,只找到了一个没有列出数组的_unique@Lizard我要检查
array\u unique
是否使用排序,并用谷歌搜索array\u unique sort
作为关键字。然后第一个结果就是我想要的:-)因为它对数组进行排序,然后进行线性扫描,时间复杂度将是O(nlogn)
,这是排序成本。