目录
1 消失的数字
数组
nums包含从0到n的所有整数,但其中缺了一个。请编写代码找出那个缺失的整数。你有办法在O(n)时间内完成吗?示例 1:
输入:[3,0,1] 输出:2示例 2:
输入:[9,6,4,2,3,5,7,0,1] 输出:81:排序+二分查找 O(N*logN)
排序:冒泡排序、,我们选择快排 O(N*logN)
二分查找: O(
)
O(N*logN)+ O(
)~~~O(N*logN)
2.异或 O(N)
int missingNumber(int* nums, int numsSize) { int val = 0; for (int i = 0; i < numsSize;
这篇博客讨论了两种算法问题:消失的数字和轮转数组。对于消失的数字,提出了排序加二分查找、异或操作和公式计算三种解决方案,时间复杂度分别为O(N*logN)、O(N)和O(N)。对于轮转数组,介绍了逐步右移、三次翻转和空间换时间的三种方法,时间复杂度分别为O(k*N)、O(N)和O(N)。
最低0.47元/天 解锁文章
1653

被折叠的 条评论
为什么被折叠?



