Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/127.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
是c++;STL vector第n个元素在页面交换方面比vector sort找到的结果要好得多? 我有一些C++代码,如果有重复的输入点(点是成对的),那么我可以遇到麻烦,我可以用STL向量排序来排序2-D点,然后识别和删除重复的预处理步_C++_Vector_Stl - Fatal编程技术网

是c++;STL vector第n个元素在页面交换方面比vector sort找到的结果要好得多? 我有一些C++代码,如果有重复的输入点(点是成对的),那么我可以遇到麻烦,我可以用STL向量排序来排序2-D点,然后识别和删除重复的预处理步

是c++;STL vector第n个元素在页面交换方面比vector sort找到的结果要好得多? 我有一些C++代码,如果有重复的输入点(点是成对的),那么我可以遇到麻烦,我可以用STL向量排序来排序2-D点,然后识别和删除重复的预处理步,c++,vector,stl,C++,Vector,Stl,是c++;STL vector第n个元素在页面交换方面比vector sort找到的结果要好得多? 我有一些C++代码,如果有重复的输入点(点是成对的),那么我可以遇到麻烦,我可以用STL向量排序来排序2-D点,然后识别和删除重复的预处理步骤,或者让代码运行(这是递归的)。并对其进行修改,以便无论何时在运行主代码时发现重复项,都会将其删除,然后在点数太少时根据需要恢复到基本情况。然而,我不想这样做,除非它是值得的 我的代码已经使用C++ STL向量第n元素找到中值,这是代码的分治

是c++;STL vector第n个元素在页面交换方面比vector sort找到的结果要好得多?

我有一些C++代码,如果有重复的输入点(点是成对的),那么我可以遇到麻烦,我可以用STL向量排序来排序2-D点,然后识别和删除重复的预处理步骤,或者让代码运行(这是递归的)。并对其进行修改,以便无论何时在运行主代码时发现重复项,都会将其删除,然后在点数太少时根据需要恢复到基本情况。然而,我不想这样做,除非它是值得的


我的代码已经使用C++ STL向量第n元素找到中值,这是代码的分治和递归的一部分。因此,我的问题是,一般来说,当向量太大,不能同时处理所有内存时,C++ + STL向量排序通常会产生比C++ STL向量中值发现更多的页面交换(常数因子乘法器,或渐近支配乘法器)?如果没有,那就告诉我应该坚持初始排序以识别和删除重复项。

重复项最初来自何处?@LightnessRacesinOrbit该代码是为客户设计的,因此不能排除重复的可能性。但几乎可以肯定的是,与点的数据集(可能非常大)相比,重复数据的数量(如果有)将非常小。这样就不必担心重复数据的添加。请注意,使用浮点是没有用的。无论如何,我想你会发现要得到这个问题的一般答案是非常困难的。涉及的因素太多。您是否在目标平台上测量了不同负载程度下的内存使用情况?@LightnessRacesinOrbit是的,但仅内存使用量超过可用内存约10-20%,因为页面交换需要很长时间。我希望知道,如果由于频繁的页面交换,代码必须运行数周,会发生什么。我可以做一个很长的实验来找出答案。此外,如果依赖于太多的因素来对C++的各种体系结构和OS和版本进行一般性声明,那么我想我会节省我的编程时间,并坚持排序,因为替代方案(处理抖动)。会相当混乱。重复的代码最初是从哪里来的?@LightnessRacesinOrbit该代码是为客户准备的,因此不能排除重复的可能性。但几乎可以肯定的是,与点的数据集(可能非常大)相比,重复数据的数量(如果有)将非常小。这样就不必担心重复数据的添加。请注意,使用浮点是没有用的。无论如何,我想你会发现要得到这个问题的一般答案是非常困难的。涉及的因素太多。您是否在目标平台上测量了不同负载程度下的内存使用情况?@LightnessRacesinOrbit是的,但仅内存使用量超过可用内存约10-20%,因为页面交换需要很长时间。我希望知道,如果由于频繁的页面交换,代码必须运行数周,会发生什么。我可以做一个很长的实验来找出答案。此外,如果依赖于太多的因素来对C++的各种体系结构和OS和版本进行一般性声明,我想我会节省编程时间,并坚持排序,因为替代方案(处理抖动)会相当混乱。