![]() |
1
2
您提出的解决方案似乎使用恒定的空间开销、恒定的时间设置和对数查询时间给出了答案。如果您愿意支付二次空间(即,提前计算所有间隔),您可以在固定时间内得到答案。您的对数方案几乎肯定是首选方案。 如果有可能做得更好,我不会感到惊讶,但如果有一个 易于理解的 |
![]() |
2
2
你所描述的方法听起来像是在尝试做某种事情 memoization 一般情况 最小值([0..n]) O(n) 您的代码似乎更关心数组中的实际数字,而不是它们在数组中的顺序。如果要重复检查这些跨度,是否可以先对数据进行排序(可能是单个跨度) O(n日志n) 行动?大多数语言都有某种内置功能 sorting algorithm |
![]() |
3
0
这样一个简单的方法是否足够:假设
|
![]() |
danial · 如何在多个字符串的每个位置找到最频繁的字符 2 年前 |
![]() |
Manny · 如何比较Perl中的字符串? 2 年前 |
![]() |
Diret · 获取范围内每个数字的子倍数的算法 2 年前 |
![]() |
Saif · 排序时python如何决定何时调用比较器? 2 年前 |