题目:删除排序数组中的重复数字 II
2015-08-19 18:56
471 查看
跟进“删除重复数字”:
如果可以允许出现两次重复将如何处理?
您在真实的面试中是否遇到过这个题?
Yes
哪家公司问你的这个题?
Airbnb
Alibaba
Amazon Apple
Baidu Bloomberg
Cisco Dropbox
Ebay Facebook
Google Hulu
Intel Linkedin
Microsoft NetEase
Nvidia Oracle
Pinterest Snapchat
Tencent Twitter
Uber Xiaomi
Yahoo Yelp
Zenefits
感谢您的反馈
样例
给出数组A =[1,1,1,2,2,3],你的函数应该返回长度5,此时A=[1,1,2,2,3]。
标签 Expand
两根指针
数组
相关题目 Expand
public class Solution {
/**
* @param A: a array of integers
* @return : return an integer
*/
public int removeDuplicates(int[] nums) {
// write your code here
if(nums==null|nums.length==0) return 0;
int k = 0;
for(int i=0;i<nums.length;i++){
int j = 0;
int tw = 1;
while(j<k){
if(tw == 2){
break;
}else if(nums[i]==nums[j]){
tw++;
}
j++;
}
if(j==k){
nums[k++] = nums[i];
}
}
return k;
}
}
如果可以允许出现两次重复将如何处理?
您在真实的面试中是否遇到过这个题?
Yes
哪家公司问你的这个题?
Airbnb
Alibaba
Amazon Apple
Baidu Bloomberg
Cisco Dropbox
Ebay Facebook
Google Hulu
Intel Linkedin
Microsoft NetEase
Nvidia Oracle
Pinterest Snapchat
Tencent Twitter
Uber Xiaomi
Yahoo Yelp
Zenefits
感谢您的反馈
样例
给出数组A =[1,1,1,2,2,3],你的函数应该返回长度5,此时A=[1,1,2,2,3]。
标签 Expand
两根指针
数组
相关题目 Expand
public class Solution {
/**
* @param A: a array of integers
* @return : return an integer
*/
public int removeDuplicates(int[] nums) {
// write your code here
if(nums==null|nums.length==0) return 0;
int k = 0;
for(int i=0;i<nums.length;i++){
int j = 0;
int tw = 1;
while(j<k){
if(tw == 2){
break;
}else if(nums[i]==nums[j]){
tw++;
}
j++;
}
if(j==k){
nums[k++] = nums[i];
}
}
return k;
}
}
相关文章推荐
- Linux 命令行Shell快捷键
- HDU-1875 畅通工程再续(最小生成树[Prim])
- 暗色调,调出紫红色的暗调晨曦照片效果(转)
- ios 点击返回顶部效果的实现,类似单击状态栏效果
- 学习资料备忘录
- 【LeetCode】116. Populating Next Right Pointers in Each Node
- 在 Java 中如何更高效地存储和管理 SQL 语句?
- Oracle 设置表空间自增长
- eclipse 终极操作技巧
- 在 Java 中如何更高效地存储和管理 SQL 语句?
- 浅析关系数据库和NoSql非关系数据库
- 题目:删除排序数组中的重复数字
- Android实例-监测网络状态及一些事件(XE8+小米2)
- 题目:删除元素
- SQL server 在自增长的字段中插入指定值
- 【ShaderToy】水彩画
- delphi TMemoryStream对象用法
- 题目:分割回文串
- 析构函数抛出异常
- UVa-442 Matrix Chain Multiplication