由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 出道简单题让大家练练白板
相关主题
google youtube interview, 莫名被拒。。。。。。求两个程序的C++ code
郁闷。。。 HR说是要安排interview,但再也没有消息。。时隔一年再次得到Amazon电面机会
onsite 以后一般多久公司会开组会做决定?MS面经
生物找工作的CV怎么写合适?谁能写个trie的框架?
能推荐一本短小精悍的algorithm书吗?How to find the size of an array? Thanks.
syncfusion免费电子书问一道google的面试题
Fresh PHD 毕业找工作求指导请教一个函数默认返回值的问题,纠结很久了
求Pure Storage面试准备吐槽一个面试
相关话题的讨论汇总
话题: int话题: narr话题: idxchecked话题: midup
进入JobHunting版参与讨论
1 (共1页)
K*****k
发帖数: 430
1
一个有序的整型数组,in place 删除重复的元素使得每个元素只出现一次。
练完后再仔细查查是否有bug。
A**u
发帖数: 2458
2
不错 这题写起来确实麻烦

【在 K*****k 的大作中提到】
: 一个有序的整型数组,in place 删除重复的元素使得每个元素只出现一次。
: 练完后再仔细查查是否有bug。

q****x
发帖数: 7404
3
这个不容易错吧。数组比链表好处理很多。

【在 K*****k 的大作中提到】
: 一个有序的整型数组,in place 删除重复的元素使得每个元素只出现一次。
: 练完后再仔细查查是否有bug。

k****n
发帖数: 369
4
这题我面A家时遇到过,关键代码就一行

【在 K*****k 的大作中提到】
: 一个有序的整型数组,in place 删除重复的元素使得每个元素只出现一次。
: 练完后再仔细查查是否有bug。

A**u
发帖数: 2458
5
容易错吧
需要再把多余的元素删掉,后面的元素补上空位

【在 q****x 的大作中提到】
: 这个不容易错吧。数组比链表好处理很多。
q****x
发帖数: 7404
6
不存在"删掉",实际是移动。当然如果是字符串,还要考虑结束符;动态数组要resize。

【在 A**u 的大作中提到】
: 容易错吧
: 需要再把多余的元素删掉,后面的元素补上空位

f*******t
发帖数: 7549
7
大致应该是这样,一些边界条件需要考虑。
int pos = 0;
for(int i = 1; i < n; i++) {
if(A[i] == A[pos])
continue;
else
pos++;
A[pos] = A[i];
}
}
K*****k
发帖数: 430
8
有没有加速的可能?
比如
1 2 3 3 ... 3 4 4 5
其中有10000个3在那里,能否用到二分查找什么的一下子跳到最后一个3呢?

【在 f*******t 的大作中提到】
: 大致应该是这样,一些边界条件需要考虑。
: int pos = 0;
: for(int i = 1; i < n; i++) {
: if(A[i] == A[pos])
: continue;
: else
: pos++;
: A[pos] = A[i];
: }
: }

b******n
发帖数: 4509
9
int deDup (int a[], int n) {
for (int i = 0, j = 0; j < n; j++) {
if (a[j] != a[i])
a[++i] = a[j];
}
return i;
}

【在 K*****k 的大作中提到】
: 一个有序的整型数组,in place 删除重复的元素使得每个元素只出现一次。
: 练完后再仔细查查是否有bug。

e*********l
发帖数: 136
10
if (xxx ) continue;
else
可以写成 if (!xxx) 或者if (xxx) continue;
这样简洁很多
而且貌似应该是
else{
pos ++;
A[pos] = A[i];
}

【在 f*******t 的大作中提到】
: 大致应该是这样,一些边界条件需要考虑。
: int pos = 0;
: for(int i = 1; i < n; i++) {
: if(A[i] == A[pos])
: continue;
: else
: pos++;
: A[pos] = A[i];
: }
: }

相关主题
syncfusion免费电子书求两个程序的C++ code
Fresh PHD 毕业找工作求指导时隔一年再次得到Amazon电面机会
求Pure Storage面试准备MS面经
进入JobHunting版参与讨论
K*****k
发帖数: 430
11
好像是,这个else就多余了,前面都已经continue了。
经常看到同一题同算法的写法,有的写起来就短小精悍,而有的则拖泥带水。我觉得白
板的的代码长度是一定要设法控制的。

【在 e*********l 的大作中提到】
: if (xxx ) continue;
: else
: 可以写成 if (!xxx) 或者if (xxx) continue;
: 这样简洁很多
: 而且貌似应该是
: else{
: pos ++;
: A[pos] = A[i];
: }

q****x
发帖数: 7404
12
清晰第一,简洁第二。

【在 b******n 的大作中提到】
: int deDup (int a[], int n) {
: for (int i = 0, j = 0; j < n; j++) {
: if (a[j] != a[i])
: a[++i] = a[j];
: }
: return i;
: }

e*********l
发帖数: 136
13
这个应该是编译不过
i的生命周期问题

【在 b******n 的大作中提到】
: int deDup (int a[], int n) {
: for (int i = 0, j = 0; j < n; j++) {
: if (a[j] != a[i])
: a[++i] = a[j];
: }
: return i;
: }

K*****k
发帖数: 430
14
眼尖的面试官会发现,有的还不当场告诉你,事后写在报告里。

【在 e*********l 的大作中提到】
: 这个应该是编译不过
: i的生命周期问题

z***e
发帖数: 209
15
int delRep(int* nArr, int sz)
{
if(sz<0 || nArr==NULL) return -1;
if(sz==1) return 1;
int i, j;
for(i=0, j=1; j!=sz; ++j)
{
if(nArr[j]!=nArr[i]) nArr[++i]=nArr[j];
}
return i+1;
}
z***e
发帖数: 209
16
ft,翘了.... if(sz<=0 || nArr==NULL) return -1;
z***e
发帖数: 209
17
用个threshold判断一下,如果有很多冗余.
if(nArrSize>1000*nArr[nArrSize-1])
{
int* BS(int* nArr, int beg, int end)
{
int midup=midlow=reserveup=reservelow=0;
while(beg<=end)
{
reserveup = beg;
midup = (beg+end)/2;
if(num==nArr[midup]) beg=midup+1;
else break;
}
while(beg>=end)
{
reservelow = end;
midup = (beg+end)/2;
if(num==nArr[midup]) end=midup-1;
else break;
}
int* pInt = new int[2];
pInt[0]=reserveup;
pInt[1]=reservelow;
return pInt;
}
}
这中间 10000个数字,如果每个数值的个数均匀分布,
比如说 1000个2, 1000个3, 1000个4 之类的.要讨论了.

【在 K*****k 的大作中提到】
: 有没有加速的可能?
: 比如
: 1 2 3 3 ... 3 4 4 5
: 其中有10000个3在那里,能否用到二分查找什么的一下子跳到最后一个3呢?

l**s
发帖数: 421
18
小白在这问一句,可以使用另一个数组吗?
s****a
发帖数: 528
19
int deDup(int *A, int N)
{
int idxChecked = 0;
int idxUnchecked = 1;
while (idxUnchecked < N)
{
if (A[idxChecked] < A[idxUnchecked])
A[++idxChecked] = A[idxUnchecked];
idxUnchecked ++;
}
return idxChecked;
}
i**********e
发帖数: 1145
20
这编译没什么问题,i 会返回一个 copy,不会有生命周期的问题,但可能会有大姨妈
周期的问题。
除非返回的是一个指向一个在函数里生成的数组,那就大问题啦。
不过话说回来 他代码有 bug,返回的应该是 i+1 而不是 i.

【在 e*********l 的大作中提到】
: 这个应该是编译不过
: i的生命周期问题

q****x
发帖数: 7404
21
out of scope.

【在 i**********e 的大作中提到】
: 这编译没什么问题,i 会返回一个 copy,不会有生命周期的问题,但可能会有大姨妈
: 周期的问题。
: 除非返回的是一个指向一个在函数里生成的数组,那就大问题啦。
: 不过话说回来 他代码有 bug,返回的应该是 i+1 而不是 i.

i**********e
发帖数: 1145
22
yeah, you are right, just saw that.

【在 q****x 的大作中提到】
: out of scope.
1 (共1页)
进入JobHunting版参与讨论
相关主题
吐槽一个面试能推荐一本短小精悍的algorithm书吗?
请教输入可能为null的处理方法syncfusion免费电子书
fb面经的一题Fresh PHD 毕业找工作求指导
请教关于如何写TestCase求Pure Storage面试准备
google youtube interview, 莫名被拒。。。。。。求两个程序的C++ code
郁闷。。。 HR说是要安排interview,但再也没有消息。。时隔一年再次得到Amazon电面机会
onsite 以后一般多久公司会开组会做决定?MS面经
生物找工作的CV怎么写合适?谁能写个trie的框架?
相关话题的讨论汇总
话题: int话题: narr话题: idxchecked话题: midup