这个代码连0测试不过。我写了一个,但是复杂度不好 void func(int* p, int n) { // write your code here...... int zeroIdx = 0; int zeroCnt = 0; while (1) { bool findFlag = false; for(int i = zeroIdx; i < n - zeroCnt; i++){ if (p[i] == 0) { zeroCnt++; zeroIdx = i; for (int j = i; j < n - zeroCnt; j++) { p[j] = p[j + 1]; } p[n - zeroCnt] = 0; findFlag = true; break; } } if (!findFlag) { break; } } }
点赞

相关推荐

码农索隆:邮件那么小的内存,把邮箱都干满了
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务