作业帮 > 综合 > 作业

编算法,将一整数序列所有负数移到正数之前,要求时间复杂度为O(n)

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/07/17 10:40:43
编算法,将一整数序列所有负数移到正数之前,要求时间复杂度为O(n)
先遍历一次,统计负数的个数,假设有k个负数,然后……,直接上代码,
int i = 0;
int j = k;
for(int x = 0; x < n; x++)
{
if(a[x] < 0) b[ i++] = a[x];
else b[ j++] = a[x];
}
说明:a数组为原数组,共n个数,b数组存的是排好序后的结果.时间复杂度显然是o(n).
不懂可以再问!
再问: 太给力了,你的回答完美解决了我的问题!