草庐IT

123454321

全部标签

c++ - O(N) 算法比 O(N logN) 算法慢

在数字数组中,每个数字出现偶数次,只有一个数字出现奇数次。我们需要找到那个数字(这个问题之前讨论过onStackOverflow)。这是一个用3种不同方法解决问题的解决方案——两种方法是O(N)(hash_set和hash_map),一种是O(NlogN)(排序)。然而,对任意大的输入进行分析表明排序更快,并且随着输入的增加而变得越来越快(相比之下)。实现或复杂性分析有什么问题,为什么O(NlogN)方法更快?#include#include#include#include#include#include#include#include#includeusingstd::cout;us

c++ - O(N) 算法比 O(N logN) 算法慢

在数字数组中,每个数字出现偶数次,只有一个数字出现奇数次。我们需要找到那个数字(这个问题之前讨论过onStackOverflow)。这是一个用3种不同方法解决问题的解决方案——两种方法是O(N)(hash_set和hash_map),一种是O(NlogN)(排序)。然而,对任意大的输入进行分析表明排序更快,并且随着输入的增加而变得越来越快(相比之下)。实现或复杂性分析有什么问题,为什么O(NlogN)方法更快?#include#include#include#include#include#include#include#include#includeusingstd::cout;us