博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Remove Element
阅读量:6976 次
发布时间:2019-06-27

本文共 842 字,大约阅读时间需要 2 分钟。

Given an array and a value, remove all instances of that value in place and return the new length.

The order of elements can be changed. It doesn't matter what you leave beyond the new length.

用两个int分别指向数组的开始和结尾,然后从前往后扫,如果发现有相同的值,则把它移到数组末尾,末尾的指针往前移,否则开始的指针往后移,直到两个指针相遇为止。

需要注意的是数组为空的情况。

int removeElement(int A[], int n, int elem) {        // Start typing your C/C++ solution below        // DO NOT write int main() function        int i = 0, j = n - 1;        int t;        if(n == 0)            return 0;        while(i != j){            if(A[i] != elem){                i++;            }            else{                t = A[i];                A[i] = A[j];                A[j] = t;                j--;            }        }        if(A[i] == elem)            i--;        return i+1;    }

 

转载于:https://www.cnblogs.com/waruzhi/p/3333660.html

你可能感兴趣的文章
计算机网络复习
查看>>
经验分享 | Burpsuite抓取非HTTP流量
查看>>
jsonp详解
查看>>
html中radio、checkbox选中状态研究(静下心来看,静下心来总结)
查看>>
npm中package-lock.json的作用:npm install安装时使用
查看>>
phpstudy一个域名配置两个网站(一个是thinkphp5,一个是原生php)
查看>>
Custom Client Side Drag and Drop Behavior in ASP.NET AJAX
查看>>
Centos 64位使用 yum 会安装两个相同软件包的解决方法
查看>>
Python 多线程抓取网页 牛人 use raw socket implement http request great
查看>>
脚本化 tmux — LinuxTOY
查看>>
《星际争霸2》引擎技术解析
查看>>
PowerDesigner 使用的一些技巧(转)
查看>>
POJ 2955 Brackets (区间DP)
查看>>
Mac中MacPorts安装和使用
查看>>
Appro DM8127 IPNC 挂载NFS遇到的问题及解决
查看>>
Delphi调用java开发的WebService,传入参数出错
查看>>
poj_2479 动态规划
查看>>
unity, monoDevelop ide 代码提示不起作用的解决方法
查看>>
MySQL 5.5.35 单机多实例配置详解
查看>>
iOS使用Security.framework进行RSA 加密解密签名和验证签名
查看>>