Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sorting N个整数要按O(N)排序?_Sorting_Data Structures_Time Complexity - Fatal编程技术网

Sorting N个整数要按O(N)排序?

Sorting N个整数要按O(N)排序?,sorting,data-structures,time-complexity,Sorting,Data Structures,Time Complexity,假设在(0,n2)范围内有n个整数 ).这些整数都是其他整数的平方根。 说明是否可以按O(n)对这些数字进行排序 我假设我们会取每个整数的平方根,但我不确定是否可以将它们按O(n)排序。如果您愿意使用O(n)空间,我们将不胜感激。是的: 您已将N个整数存储在数组A中 为位图B分配2n+1位,初始化为零 对于每个整数,将B[A[i]]=1 创建空列表: 按顺序迭代B,以便如果B[i]==1,则将i添加到列表中 它可以在时间O(2n)=O(n)内完成

假设在(0,n2)范围内有n个整数 ).这些整数都是其他整数的平方根。 说明是否可以按O(n)对这些数字进行排序


我假设我们会取每个整数的平方根,但我不确定是否可以将它们按O(n)排序。如果您愿意使用O(n)空间,我们将不胜感激。

是的:

  • 您已将N个整数存储在数组A中
  • 为位图B分配2n+1位,初始化为零
  • 对于每个整数,将B[A[i]]=1
  • 创建空列表:
  • 按顺序迭代B,以便如果B[i]==1,则将i添加到列表中
它可以在时间O(2n)=O(n)内完成