微軟電話面試總結
---主要是如何答考試題---
微軟電話面試中不可缺少的部分,就是讓你在一段時間內讓你寫代碼,面試時考官給你郵箱地址,并把考試題發到你的郵箱里。應該如何答題,如果我的意見有問題請大家一起探討。
1.你的電腦上必須有編譯環境,并能做調試你寫的代碼。
2.接到考試題以后,先搞清楚問題,然后分析解決問題的思路。
3.如果在一定的時間內未能完成答題,就面試結束之后,抓緊時間,把正確的答案給考官。這點是不是很明知的選擇請大家評論。
我接到的題目是:
有整形數組 {1,1,2,3,3,5} ,去掉重復數結果是{1,2,3,5}并返回個數4。
思路大家自己想想
int compact(int
*p,int size)
{
int i,j;
int count = 1;
if(p == NULL) return -1;
if(size <= 0) return 0;
if(size == 1) return 1;
for(i = 1; i < size - 1;i++)
{
if(*(p + i) == *p) continue;
for(j = i+1;j<size;j++)
{
if(*(p+i) == *(p+j))
*(p+j) =
*p;
}
}
for(i = 1; i < size;i++)
{
if(*(p+i) != *p)
*(p+count++)=*(p+i);
}
return count;
}