leetcode: Remove Duplicates from Sorted Array# JobHunting - 待字闺中
x*0
1 楼
开始做leetcode,按二爷的总结,由易到难,一天两道。
今天是 remove duplicates from sorted array 1, 2
http://leetcode.com/onlinejudge#question_26
http://leetcode.com/onlinejudge#question_80
下面是我的代码:
int rightMost_of_curElem(int A[], int curElem, int ind, int n)
{
while(ind {
if(A[ind]!=curElem)
break;
++ind;
}
return --ind;
}
(1)
int remove_duplicates(int A[], int n)
{
int i=0;
int unique_num = 0;
while(i {
int cur_elem = A[i];
int pos = rightMost_of_curElem(A, cur_elem, i, n);
//cout << pos << endl;
i = pos+1;
A[unique_num++] = A[pos];
}
return unique_num;
}
(2)
int remove_duplicates(int A[], int n)
{
int i=0;
int unique_num = 0;
while(i {
int cur_elem = A[i];
int pos = rightMost_of_curElem(A, cur_elem, i, n);
if(A[pos]==A[pos-1])
{
A[unique_num++] = A[pos];
}
A[unique_num++] = A[pos];
i = pos+1;
}
return unique_num;
}
代码经过了online的测试~。 如果哪位哥们有空,帮忙review代码那是最好啦~。 就代
码本身提些意见。先谢谢啦。其实能一起交流那是最好了,我也很乐意提出我的意见。
就是水平太菜的话,别介意哈~
今天是 remove duplicates from sorted array 1, 2
http://leetcode.com/onlinejudge#question_26
http://leetcode.com/onlinejudge#question_80
下面是我的代码:
int rightMost_of_curElem(int A[], int curElem, int ind, int n)
{
while(ind
if(A[ind]!=curElem)
break;
++ind;
}
return --ind;
}
(1)
int remove_duplicates(int A[], int n)
{
int i=0;
int unique_num = 0;
while(i
int cur_elem = A[i];
int pos = rightMost_of_curElem(A, cur_elem, i, n);
//cout << pos << endl;
i = pos+1;
A[unique_num++] = A[pos];
}
return unique_num;
}
(2)
int remove_duplicates(int A[], int n)
{
int i=0;
int unique_num = 0;
while(i
int cur_elem = A[i];
int pos = rightMost_of_curElem(A, cur_elem, i, n);
if(A[pos]==A[pos-1])
{
A[unique_num++] = A[pos];
}
A[unique_num++] = A[pos];
i = pos+1;
}
return unique_num;
}
代码经过了online的测试~。 如果哪位哥们有空,帮忙review代码那是最好啦~。 就代
码本身提些意见。先谢谢啦。其实能一起交流那是最好了,我也很乐意提出我的意见。
就是水平太菜的话,别介意哈~