w*********l 发帖数: 1337 | 1 第一个你strcmp一个一个对位减下来就好了,O(n),为啥还费劲算hash捏?要是我我也
不乐意。 |
|
s****t 发帖数: 36 | 2 RP很高,被问了2个很简单的题。一个是inplace reverse linklist,另一个是
strcmp的implementation。不是local的,不知道是不是还要第三轮电面。 |
|
I**********s 发帖数: 441 | 3 问了1) 研究, 2) 多线程程序设计, 3) 任意无穷字符串流, 内存有限, 找出唯一一对
重复字符串, 这个我说了哈希表和外部排序, 但是面试人说有更好的办法(后来想也许
是bloom filter), 然后追问外部排序的细节到结束. 估计要挂 :(
总结: 面试既是技术活, 又是运气活.
无论如何, 把我的准备工作放下面, 攒点rp, 希望对大家有所帮助.
Interview Qs
Data Structures
1. Integer
- find number of 1s
- next largest smaller
- smallest larger number
- determine if is palindrom
- itoa, atoi
- add 2 numbers w/o using + or arithmetic operators
- implement *, -, / using only +
- find max of two numbers w/o co... 阅读全帖 |
|
x******a 发帖数: 3 | 4 最近面试了著名的F家和G家。都签了NDA的,不过在版上受益匪浅,还是跟大家分享一
下题目吧。下面的题目都是混杂在一起的,也没分都是谁家的。大家看看题目就好。
1. Phone interview
- Given two sorted arrays of int, merge them into one sorted array.
Write codes.
- Write codes for strcmp
- Write codes for a card shuffle function
2. Onsite
- print a singly linked list in reverse order
- write codes to implement float sqrt(int n)
- given a node in BST, find the node whose value is next higher than
this one, i.e., the next node in in-order traversa |
|
b*********n 发帖数: 464 | 5 投了他家的senoir职位,超快,第二天就受到电话面试。电话面试两轮。记得的问题有
1. Strlen(“hello”)=?
sizeof(“hello”)=?
2. 实现int strcmp(char* s1, char* s2),念代码。
3. inline函数优点,放到什么位置(头文件还是cpp文件)?
4. 如果main函数只有如下结构
int main(…)
{
Try{…}
catch(){…}
}
并且这个catch语句catch了所有的exception,但是这个程序还是coredump了,问可能是什么问题引起的。
过几天受到onsite,安排好行程我竟然发现去的时候是头等舱,呵呵,人生第一次做头 等舱啊。当时特意去网上查了这趟班机,发现还有不少经济舱的座位,他家还挺大方的。Onsite总共5轮,前面两轮全是技术,每轮两人。问简历。现在记得的Technical
questions 有:
1. 写程序判断是little endian还是big endian
2. 写程序reverse一个c字符串
3. TCP serv |
|
M********5 发帖数: 715 | 6 首先,你要弄清楚这道题的考点。这道题的考点是conversion operator,参考c++
primer的527页。
conversion operator的很明显的一个特点是函数以operator开头,且没有返回值,依
据这一点,排除了三个选项。
第二个考点(本来不是太明显,在这题中),就是const究竟修饰什么,记住一点,
const放在*后面,修饰的就是指针,就是说指针不能再变。
第三个考点,strcmp的参数类型是什么?cstring!cstring又是什么?const char*!
所以这就是我的答案 |
|
f********3 发帖数: 38 | 7 careercup 上有这个题 的答案
如果碰到空的str怎么办,找下一个非空的str,这样worst case就是o(n)不是o(logn)了
search(int start,int end){
mid=(start+end)/2;
while(str[mid]==' ') {mid++;}
r=strcmp(str1[mid+1,mid+1+str2.length()],str2);
if(r==0) return mid;
else if(r<0) search(mid+1,end);
else search(start,mid-1);
} |
|
E*****7 发帖数: 128 | 8 class String
{
public:
String(const char*);
String();
friend int strcmpu(const String& lhs, const String& rhs);
private:
char* s;
int len;
};
// Implementation for it to compile("Big Three" issue exists)
#include
class String
{
public:
String(const char* in_s)
{
if (in_s)
{
s = new char[strlen(in_s) + 1];
strcpy(s, in_s);
} else {
String();
}
}
String()
{
s = 0;
len = 0;
}
friend int strcmpu(const String& lhs, const String& rhs);
private:
char* s;
... 阅读全帖 |
|
r*****b 发帖数: 8 | 9 刚面试完第二轮.. 估计要挂.. 题很简单.. 今儿中邪了.
第一轮:
经典stack题 pop, push, getmin
实现一下strcmp
第二轮:
打印一棵二叉树最深的路径
实现一下strstr(char* haystack, char* needle) 不可以用strlen等库函数
注意一下 needle可能比haystack长.. (俺忘了这个..)
ps. 小印不善啊... 放我一个小时的鸽子... 唉.. :( |
|
n*s 发帖数: 752 | 10 strcmp()
binary search
find an element in a rotated sorted array (binary search)
given an integer array, check if a + b + c = 0
binary tree, print elements by level |
|
l*****a 发帖数: 14598 | 11 strcpy
strcat
strcmp
strstr
substring |
|
S**I 发帖数: 15689 | 12 error message说的很清楚:string类的operator<没有定义,改成这样子就行了:
#include
#include
#include
#include
#include
using namespace std;
bool comp(const string& s1, const string& s2){
return strcmp(s1.c_str(), s2.c_str()) < 0;
}
int main () {
char *m1[] = {"a","e","c","m"};
vector v1(m1,m1+4);
char *m2[] ={"n"};
vector v2(m2,m2+1);
vector u;
/* int m1[] = {1,2,3,4};
vector v1(m1,m1+4);
int m2[] ={... 阅读全帖 |
|
g*********s 发帖数: 1782 | 13 why not post out ur code?
str_cmp() or strCmp() really means nothing. |
|
c********1 发帖数: 161 | 14 我是这周三面试的,周四回来歇了两天,压跟就没有心情来版上询问。我总共面了6个
人,5个
leader(真的各个title都是leader or senior leader,我就纳闷,M家木有engineer
吗?)和一
个PM。 问题比较简单,
实现strcmp,
实现malloc and free,讨论memory leak怎么解决,以及memory fragment问题
pointer问题(这个问的很杂,比如什么指针存的是一个已经out of scope的address之
后会发生
什么之类的,具体记不清楚了)
multi-processor相关问题,比如multi-processor的机器实现lock要怎么做,我好像说
了memory
bus之类的,中断这时候不起作用了。
Open question(这个问题我用数学模型解释,以至于面我的人以为我是Math的。。。
。。。。。
)
reverse string(我被问到时很无语,面试官貌似对我的回答也很无语。。。。。。。
因为我说
这道题太简单了,能不能换个难点的,他还是让我写,写完他看完就没说啥了。。。。
。我非常
无语)
第四... 阅读全帖 |
|
f********3 发帖数: 210 | 15 比如面试时,用set显然更好写。但hashset快。
hashset不是STL里面的,那么是不是所有的函数都得自己写。。。。感觉太麻烦了。。。
在这里看到个例子。那么面试时是不是还得这样写?
有没有好点的hashset的例子?多谢了
struct eqstr
{
bool operator()(const char* s1, const char* s2) const
{
return strcmp(s1, s2) == 0;
}
};
void lookup(const hash_set, eqstr>& Set,
const char* word)
{
hash_set, eqstr>::const_iterator it
= Set.find(word);
cout << word << ": "
<< (it != Set.end() ? "present" : "not prese... 阅读全帖 |
|
t*******1 发帖数: 206 | 16 编译原理和计算机理论是计算机学科的基础。不知道是学的不够好所以觉得无聊还是因
为其他。这样说吧,编程语言对于计算机就相当于方程式的配平对于化学。cs的不仅仅
会编程,还应该知道为什么在程序中不能用strcmp,strcat这些函数,还应该知道什么
是递归,动态规划。 |
|
S**I 发帖数: 15689 | 17 #include
#include
#include
struct StringCount{
char s[100];
int count;
};
int compare(const void * a, const void * b){
return ((*(struct StringCount *)a).count < (*(struct StringCount *)b).count);
}
void printSortedWords(char * s, FILE * file){
int size = strlen(s);
struct StringCount sc[100];
int num = 0;
char newstr[100];
int i = 0;
for(; i < size; i++){
if(s[i] != ' '){
int j = 0;
while(s[i]... 阅读全帖 |
|
a***r 发帖数: 93 | 18 这题如果用DP来做,哪位给分析一下什么是subproblem?
【 以下文字转载自 Programming 讨论区 】
发信人: minisand (老婆是A+海博), 信区: Programming
标 题: 请教一个字符串比较排序的问题
发信站: BBS 未名空间站 (Mon Nov 9 16:35:46 2009, 美东)
之前有人贴出了常见的那个求Maximum repetitive substring的代码,如下:
void MaxDuplicatedSubstring(char *input, char *result)
{
int length = strlen(input);
char **substrings = new char**[length];
for (int i=0; i < length; i++)
substrings[i] = input + i;
qsort(substrings, length, sizeof(char*), (int (*)(const void*, const void*
))strcmp);
... 阅读全帖 |
|
q****x 发帖数: 7404 | 19 struct compChar {
bool operator ()(char* s1, char* s2) { return strcmp(s1, s2) < 0; }
};
set strSet; |
|
b*****c 发帖数: 1103 | 20 来自主题: JobHunting版 - 问个算法题 bitmap??
用map
struct ltstr
{
bool operator()(const char* s1, const char* s2) const
{
return strcmp(s1, s2) < 0;
}
};
map |
|
S**I 发帖数: 15689 | 21 ☆─────────────────────────────────────☆
coconut001 (coconut001) 于 (Sat Apr 16 20:51:09 2011, 美东) 提到:
我是这周三面试的,周四回来歇了两天,压跟就没有心情来版上询问。我总共面了6个
人,5个
leader(真的各个title都是leader or senior leader,我就纳闷,M家木有engineer
吗?)和一
个PM。 问题比较简单,
实现strcmp,
实现malloc and free,讨论memory leak怎么解决,以及memory fragment问题
pointer问题(这个问的很杂,比如什么指针存的是一个已经out of scope的address之
后会发生
什么之类的,具体记不清楚了)
multi-processor相关问题,比如multi-processor的机器实现lock要怎么做,我好像说
了memory
bus之类的,中断这时候不起作用了。
Open question(这个问题我用数学模型解释,以至于面我的人以为我是Math的。。。
。。。... 阅读全帖 |
|
S**I 发帖数: 15689 | 22 ☆─────────────────────────────────────☆
gzou (gzou) 于 (Thu May 12 02:26:35 2011, 美东) 提到:
马上就要G on site了,
求祝福。
下面是从本版收集到的Google的试题,便于大家查询。
申明:有的附带有解释说明的,也来自于本版或者网络,大家自己看, 不保证真确
http://www.mitbbs.com/article_t1/JobHunting/31847453_0_1.html
本人ECE fresh PhD,背景是电路/EDA,跟G业务基本没什么关系
同学内部推荐的,很简单的一次电面就给了onsite
题都不难,但是自己没把握好机会,出了一些小bug。
总的感觉,出错就是硬伤,宁可从最简单的算法写起,也不能出错。
电面:
1,Skip list, http://en.wikipedia.org/wiki/Skip_list
写code实现struct skip_list * find(struct skip_list *head, int value)
2,sorted array... 阅读全帖 |
|
S**I 发帖数: 15689 | 23 ☆─────────────────────────────────────☆
gzou (gzou) 于 (Thu May 12 02:26:35 2011, 美东) 提到:
马上就要G on site了,
求祝福。
下面是从本版收集到的Google的试题,便于大家查询。
申明:有的附带有解释说明的,也来自于本版或者网络,大家自己看, 不保证真确
http://www.mitbbs.com/article_t1/JobHunting/31847453_0_1.html
本人ECE fresh PhD,背景是电路/EDA,跟G业务基本没什么关系
同学内部推荐的,很简单的一次电面就给了onsite
题都不难,但是自己没把握好机会,出了一些小bug。
总的感觉,出错就是硬伤,宁可从最简单的算法写起,也不能出错。
电面:
1,Skip list, http://en.wikipedia.org/wiki/Skip_list
写code实现struct skip_list * find(struct skip_list *head, int value)
2,sorted array... 阅读全帖 |
|
n***a 发帖数: 222 | 24 算法:
Given an unsorted integer array, find the first missing positive integer.
For example,
Given [1,2,0] return 3,
and [3,4,-1,1] return 2.
Your algorithm should run in O(n) time and uses constant space.
c++:
一个类A有一个char*的成员, 如果要支持以下代码:
A a,aa;
...
strcmp(a,aa);
需要加个什么method到这个类里面去? |
|
i***h 发帖数: 12655 | 25 用C++ STL, 还好了
下面的代码少了最后一步, 也没有sanity check
但也不难
当然效率不是最好的
#include
#include
#include
#include
using namespace std;
bool
compstr(char* a, char* b)
{
return strcmp(a,b)<0;
}
void
suffixArray(char *a, char *b)
{
char *m = (a>b)? a-1 : b-1;
char* suffix[strlen(a)+strlen(b)];
for(int i = 0; i
suffix[i] = a+i;
}
for(int i=0; i
suffix[strlen(a)+i] = b+i;
}
sort(suffix, suffix+strlen(a)+strlen(b), comp... 阅读全帖 |
|
f*****e 发帖数: 2992 | 26 给个O(N)的。
两个指针可以搞定。a[1...n]。
p1=a; // p1保存前i个元素的最大suffix的起始位置。
p2=a+1; // 当前扫到的位置,与以p1起始的字符串进行比较,分4种情况:
1)如果*p2>*p1,then p1=p2,
2)*p1==*p2, then p1++;p2++直到遇到比*p1,*p2都大的字符*p4,就p1=p4,p2=p4+1
3)*p1==*p2, strcmp(p1,p2)<0, p1=比较后的最后一个period;
4)*p2 < *p1, p2++;
while(p2 < a + n)
{
if(*p2 > *p1) p1 = p2;
else if(*p2 == *p1){
p4 = p2;
k = p2 - p1; // length of pattern or period a[p1...p2-1]
j = 1;
// repeatedly compare with a[p1...p2-1]
while(++p4 < a ... 阅读全帖 |
|
f*****e 发帖数: 2992 | 27 3)就是caca < cacb,也就是strcmp('caca','cacb')<0,这种比较排除了第2种情况,
就是c之后没有比‘c'大的。所以p1一开始指第一个c,变成指第2个c。然后就结束了。 |
|
b*****c 发帖数: 1103 | 28 strcmp does not do the trick
A value greater than zero indicates that the first character that does not
match has a greater value in str1 than in str2; And a value less than zero
indicates the opposite |
|
J**9 发帖数: 835 | 29 N-ary tree
typedef struct tree_node {
char *data;
int numChildren;
struct tree_node **children;
} treeNode;
search by pre-order traversal:
treeNode *searchNode(treeNode *root, char *data)
{
if (!root || !data) return NULL;
if (!strcmp(root->data, data))
return root;
for (int i=0; inumChildren;i++)
{
treeNode *node = searchNode(root->children[i], data);
if (node)
return node;
}
return NULL;
} |
|
M**A 发帖数: 78 | 30 最差情况:
假设 adv <=24000, 抽中概率x=1-(1-20/24)(1-65/100)>94%
理想情况:
struct profile {
char* name;
char* employer;
char* nationality;
bool isAdv;
bool approval;
};
bool PermitLottery(profile & applicant) {
if (!strcmp(applicant.nationality,"cn")) return true;
else {
......
}
} |
|
g******z 发帖数: 893 | 31 主要考概率,machine learning的基本概念,当然还有coding
面试官1:
(1)naive bayes的原理,要求推公式解释
(2)svm的原理,推公式解释。什么是support vector
(3)naive bayes和svm的比较,哪种分别在什么情况下比较好,为什么
(4)kernel function的概念,在什么情况下用
(5)cross-validation的概念,在什么情况下用
面试官2:
(1)一个urn里有red,blue,green三种小球,分别的个数都已知。给一个uniform
random number generator产生[0,1]之间的数,要求写一个function随机选取小球,
选取的概率跟球的分布一致
(2)怎么测试(1)中function的正确性
(3)open question:给一个url的list,可以利用什么信息来对它们进行打分排序(
比如user click的log)。
(4)给若干个url和一个user click的log,问怎么对这些url排序比较合理,给出理由
面试官3:
(1)leetcode OJ的unique p... 阅读全帖 |
|
c*******8 发帖数: 707 | 32 I ask him to write the strcmp() function, this guy does not know how to
write it.
My manager looked at his resume, think he is very senior and a strong
candidate to our team. |
|
c*******8 发帖数: 707 | 33 I ask him to write the strcmp() function, this guy does not know how to
write it.
My manager looked at his resume, think he is very senior and a strong
candidate to our team. |
|
b**********5 发帖数: 7881 | 34 这个也很正常吧。 谁他妈的没事, 自己去写个strcmp的function啊?! |
|
J**9 发帖数: 835 | 35 Problem at
http://discuss.leetcode.com/questions/765/word-break
This does not seem to be a DP problem, just do it in a straightforward way.
Here's my implementation in C. Any issue?
Thanks.
//===========================================================
#include
#include
#include
#include
#include
/**
* Given a string s and a dictionary of words dict, determine if s can be
segmented into a space-separated sequence of one or more
* dictionary w... 阅读全帖 |
|
J*******4 发帖数: 14 | 36 从版上看了很多东西,今天也来回报一下,分享一下我的经验。希望能对大家有帮助。
简单介绍一下背景。非名校,非牛人,EE fresh Phd,machine learning方向,主要研
究理论和提一些方法。对做research很感兴趣。完全不觉得读PhD痛苦。相反经常自己
没事,周末去实验室做点事。主要目标在工业界找一个research type职位。这是自己
最主要的要求。因为必须是自己喜欢干的才能干的好,而且只要干好了,待遇也不会低
。个人对coding并不排斥,但是觉得coding只是一个工具,更重要的是要实现的内容。
已经有几年没用C和C++了,但是对自己的coding还是很有信心的,在国内工作过几年
SDE,觉得coding至少不是自己的弱项,虽然没有专门刷题练过。
老板很久前就说给一个PostDoc职位,可能也是因为这个,整个找工作的阶段自己心态
都很放松。6月开始正式找工作。8月下旬签offer。总共投了6、7家。面了两家G和A。
拿了一个offer,A的ML scientist。自己很满意这个结果。 在这里要特别感谢版上的
一位前辈给内推GE,虽然由于一些原因最后没成,但... 阅读全帖 |
|
S**I 发帖数: 15689 | 37 In the return statement, what if *s1 is '\0' and *s2 is a signed char with
negative value? the function sould return -1 in this case, but it will
return +1 instead. |
|
k*******a 发帖数: 433 | 38 if they are ASCII code, char* is ok
if they are extended ASCII code, must be unsigned char * |
|
|
r*****e 发帖数: 7853 | 40 你知道strcmp在哪几种语言里有吗?不会像老马一样以为会Java就可以造手机了吧?
[在 huhu1 (呼呼~) 的大作中提到:]
:露馅儿了吧,你肯定没写过C/C++ |
|
|
|
k****w 发帖数: 3753 | 43 TeamSpeak: http://www.teamspeak.com/
address: newyork01.voipservers.net
port: 10004
password: 888
Starcraft ID:
kingcw: kingcw.301
likeasura: iamseraph.576
UglyTroll: UglyTroLL.793
hero080: puremj.935
TianQiang: MasterAsia.173
Allen162: ALLEN.381
silentwolf: silentwolf.126
Kaaka: Xiuxiu.589
???: tjneibor.326
???: deadcrazy.658
magicloud: Yang.967
saadi: saadi.???
dumand: dumand.389
fatboat: spixel.324
???: Flameelf.950
wuyt: WEC.867
leowh: leowh.906
svncheckout: strcmp.430
dannyfulgent: FulgentD... 阅读全帖 |
|
k****w 发帖数: 3753 | 44 -- QQ群:85144704
-- Starcraft 2 ID:
kingcw: kingcw.301
likeasura: iamseraph.576
UglyTroll: UglyTroLL.793
hero080: puremj.935
TianQiang: MasterAsia.173
Allen162: ALLEN.381
silentwolf: silentwolf.126
Kaaka: Xiuxiu.589
???: tjneibor.326
???: deadcrazy.658
magicloud: Yang.967
saadi: saadi.???
dumand: dumand.389
fatboat: spixel.324
chaocs: Flameelf.950
wuyt: WEC.867
leowh: leowh.906
svncheckout: strcmp.430
dannyfulgent: FulgentDanny.177
sckyo: sckyo.???
Wensi: PaPaBear.844
squallbob: squallbob.826
Ran... 阅读全帖 |
|
|
k****w 发帖数: 3753 | 46 he played with me until 4am this morning.
i don't know
he might still be sleeping, i guess
can you wait for him?
sorry. |
|
|
|
k****w 发帖数: 3753 | 49 wait,
we gonna cast your game, :) |
|
|