Lutron Electronics电面,找人内推的,Software Engineer Generalist。这家公司是做室内电器设计的。
这个岗位是根据个人兴趣和公司需要在不同的职位中rotate。
面试官是做IoT的Mobile App,跟Design和Electrical Engineer合作怎样使得这个App更好用。
用的是Skype电面,敲代码用的是Skype for Interview。
总共45分钟,前10分钟聊简历,之后做题。
打印出来1-100所有的数字,每个数字单独一行。如果是3的倍数,则打印“lu”;如果是5的倍数,则打印“tron”;如果是15的倍数,则打印“lutron”。
1st Follow-Up:怎样不用for loop来做这道题?
2nd Folow-Up:如果这个函数被频繁调用,怎样优化?
(答案在下面)
1st Follow-Up:用Recursion,我的解法是定义
void printNum(int start, int end) {
checkAndPrint();
if (start == end) {
return;
}
printNum(start + 1, end);
}
2nd Follow-Up:直接把整个答案存起来,每次调用这个函数的时候返回即可。