K*******i 发帖数: 399 | 1 我已经是第N次在不同的面经里看到这道题出现了。
这题到底想考察什么(设计模式还是算法?),有什么trick?
template class iterator {
bool hasNext();
T next();
}
现在要写一个decorator(wrapper),里面有一个T peek()函数,它返回的是当前指向的
数据,如果反复call它,它应该回复一样的数(如果call next()再用peek(),返
回的就是下一个数据) |
|
p*****o 发帖数: 1285 | 2 1. Print a matrix in spiral order from (0,0) to the center.
2. longest palindromic sub-string.
3. implement a wrapper class, Iterator >, to simulate the
interface of Iterator.
4. validate a binary search tree.
5. design a traffic light system.
6. 2-d sorted matrix, count negative numbers.
7. merge two sorted linked lists. |
|
q***y 发帖数: 236 | 3 多谢分享。
3. implement a wrapper class, Iterator >, to simulate the
interface of Iterator.
这题能在解释下吗? |
|
p*****o 发帖数: 1285 | 4 Iterator class provides two basic methods,
bool has_next();
T& next();
要求写一个wrapper class for Iterator>, 实现和Iterator相同的界
面,也就是实现上述两个方法。 |
|
G******i 发帖数: 5226 | 5 ☆─────────────────────────────────────☆
verita (verita) 于 h 提到:
在jobhunting版潜水了近一年,受教良多,不过一直没有发过帖。。本人cs小硕,明年
5月毕业,目前有bb和ms两个sde entry level 的offer, 比较纠结,还请各位赐教。
个人的考虑:
1.本人算是科班出身,比较满足于做码农,现在没有什么想转金融的念头。假期在纽约
一家金融公司实习当quant developer, 觉得不算特别有兴趣,也没有接return offer,
所以bb可以作为金融业跳板的优势基本没有。
2.MS在一个不是很热门的组,针对企业级应用的,system level,个人觉得还比较喜欢
,但是估计比较稳定,没有热门组那么有挑战。
3.最重要的。。bf现在在读phd, 我毕业之后还有2年,如果在bb的话是2小时车程,在
MS的话就是东西岸7个小时飞机+3小时时差的commute...个人是不太希望他毕业后我们
还异地的,所以到时候估计会换工作或者是公司内relocate到能在一起的城市。。
所以我考虑的主要出发... 阅读全帖 |
|
c******t 发帖数: 391 | 6 前些天面试,被interviewer问到Java里primitive类型(如int, char等)和class类型(
如Integer, Character)的区别和用法,我能想到的只有primitive type是其class类型
的wrapper,另外container必须使用class type定义其元素类型。但依然不是很清楚,
为什么container不能用primitive type,另外Java用两种形式(primitive&class)定义
同一类型的根本目的是啥?
请教一下大家这个问题,提前谢过了! |
|
i********m 发帖数: 332 | 7 For every object that is not a primitive type, it's passed by reference.
Only the primitive type and their wrapper are passed by value.
for example :
public void foo (Integer i) {
i = 9;
}
public static void main (String[] args) {
Integer i = new Integer (10);
foo(i);
System.out.println(i);
//The value is still 10 in i, not 9
} |
|
c********t 发帖数: 5706 | 8 多谢分享!其他primitive wrapper class有同样问题吗?如果有,每个type比较范围
是什么?
我以为所有比较,都要转成primitive type value呢。 |
|
P*******b 发帖数: 1001 | 9 我觉得问题的关键不在于控制是否call进去了吧。call进去马上block跟没有call区别很
大吗?如果真这样,大不了再写个wrapper的函数把信号量房外面也行吧。 |
|
h*******0 发帖数: 270 | 10 如果楼主真是这意思,那你写得也对。。 不过按字面意思,感觉用个wrapper比较好
别很 |
|
t*********h 发帖数: 941 | 11 你说的都是primitive types吧 就是写个wrapper就行 |
|
l**h 发帖数: 893 | 12 wrapper or global variable |
|
c*******i 发帖数: 30 | 13 c++可以, 应该是用了reference吧~
java里可以写个wrapper class, 包上一个int 变量~~ |
|
p*****2 发帖数: 21240 | 14
是呀。所以王垠说他画了画,他的一个pattern对应这GoF的几个pattern。比如平时说
的wrapper,至少包含了decorator,adapter, facade,command几个。 |
|
f*******t 发帖数: 7549 | 15 F
电面和onsite都是在西雅图本地面的。此分部是在downtown附近租的两层,有近360度
的景观,十分漂亮。分部总共有不到200人,很多是从微软来的,从A挖来的倒不多,原
因不明。午饭质量不错,小分部就不指望有中餐咯。
电面
1. 国人大哥,问了几个常见题,最难的题具体细节记不清了,大概是01矩阵上的DFS,
随便聊了会儿直接拿到onsite。
Onsite
1. 白女,亚马逊manager出身的女工程师,主问culture fit问题,比如为什么想来FB
。Coding题是恶心的罗马数字。因为鄙视这道题所以没在leetcode上刷过,还好是简单
题,很快写出来了。
2. 一个搞后端处理data的中国哥们,问sort linked list。随手写了个merge sort过
关,merge的时候没用dummy node方法,if语句用的很多,比较蛋疼。讨论了一下具体
的算法复杂度,直接背答案的人估计会被考倒。所以说做面试题的目的主要还是掌握算
法并能灵活用于解题,不太可能所有题都能练到随手就写出最优算法bug free的程度。
3. 午饭不算正式面试,跟一个呆了六七年的fron... 阅读全帖 |
|
r********9 发帖数: 1116 | 16 来自主题: JobHunting版 - BB店面经 declare from new only, means allocation from stack should be forbidden.
This can be achieved by making constructors private. In addition to that,
you should define a static wrapper function within which to invoke
constructor and return a dynamically allocated object.
class heapObject{
private:
heapObject(){}
public:
static heapObject* create(){ return new heapObject;}
};
int main(){
heapObject* sample=heapObject::create();
} |
|
b****g 发帖数: 192 | 17 题目很简单,没什么说的,但是我卡在C++语法上了。
需要自己写个模板,模板里有个iterator,于是我就不知道该怎么写了。
template
class Wrapper
{
iterator it;
};
给class T做个模板,T可以是vector、list等等。我要写的模板就是把T的iterator赋
给it,这样我在it里面找next就相当于在T的iterator里面找。 |
|
r*********n 发帖数: 4553 | 18 我觉得不要存vector的iterator,因为很多操作都会invalidate vector iterator,所
以你在wrapper里面存一个reference就好了,至于为什么是负数,我也没看出来(你忘
记delete了).... |
|
g**G 发帖数: 767 | 19 同问,如果用Priority queue的话,是不是得写个wrapper,把超出大小的就边扫边丢
掉了 |
|
c********p 发帖数: 1969 | 20 这个有想过但不知道怎么实践。
这个pair,是什么操作,什么数据结构?是自己定义一个wrapper class么? |
|
|
D****6 发帖数: 278 | 22 其实就是用listnode自己当个wrapper.
ListNode newHead = new ListNode(-1);
public ListNode reverse(ListNode head, ListNode newHead) {
if(head.next == null) { // you are at the tail
newHead.next = head;
return head;
}
......
}
外面return newHead.next; |
|
|
f****e 发帖数: 34 | 24 哎,这种面试题oj不像普通acm/icpc oj,只用生成数据就行,用户自己写main函数处
理输入输出。
这个还得为每一种语言写个wrapper,处理输入和输出和调用用户的程序。 |
|
l*n 发帖数: 529 | 25 // wrapper
public boolean doable(String s) {
int[] memo=new int[s.length()+1];
Arrays.fill(memo, -1);
return doable(s, 0, memo)==1;
}
// helper
int doable(String s, int i, int[] memo) {
......
if (memo[i+1]==-1) memo[i+1] = doable(s, i+1, memo);
......
} |
|
i**e 发帖数: 604 | 26 所谓的lock free,是指用std::lock_guard 么?感觉lock_guard像
wrapper。。。
请问还有别的好方法么?
刚刚开始看,要是能大方向上指点我一下就更好了!谢谢!:) |
|
p*****3 发帖数: 488 | 27 看到前面人post了这样一个问题,所以顺便问一问
const char* copy(const char* src, char* dest, int n)
一般的做法是用一个wrapper来保护字符串。因为直接传来的是指针,好像没办法这么
做,应为src随时都可以在被copy的时候被修改。
是不是可以copy以后然后再对比copy后的memory和src是不是每个byte一样的,不一样
再retry?? 不过好像也不行 |
|
p*****3 发帖数: 488 | 28 看到前面人post了这样一个问题,所以顺便问一问
const char* copy(const char* src, char* dest, int n)
一般的做法是用一个wrapper来保护字符串。因为直接传来的是指针,好像没办法这么
做,应为src随时都可以在被copy的时候被修改。
是不是可以copy以后然后再对比copy后的memory和src是不是每个byte一样的,不一样
再retry?? 不过好像也不行 |
|
e******0 发帖数: 291 | 29 HR说他们最近狂缺人, 年底突击花budget, 于是我们家两口子都同时面了好几个组
尼玛全是烙印!!! 我运气好点,面到一个国人大哥,问题不难,但为啥没回应呢...
剩下的我面了三个都是烙印, 老婆面的三个全是烙印, 如网上说的, 不是IP电话, 口音
重+电话声音差... 极其不流畅...
不管答的好不好, 没有一个收到下一轮通知的, 我真是怀疑他们家是在打广告...
我跟其中一个三哥吵了一架, 因为java pass by value的问题; 老婆也面了个写C++的
阿三, 偏要用java写个method,不新建wrapper class, swap integer without return
value; 跟他说了,java 的int pass by value, 就算是用Integer, 那也是个immutable
的, 没返回值没法做, java又没有指针, 三哥不听, 一个小时面试多半的时间一直纠结
于这么个东西... 然后还有个三
哥直接爽约没打过来.....
他们家真是让人负能量满满的啊, 不知道是不是技术组已经阿三占领了... |
|
s********u 发帖数: 1109 | 30 我因为自学了下java。所以最近想过这个问题,用一个wrapper class也可以,其实两
种都是一致的,就是取一个reference指向要引用的对象。 |
|
s********u 发帖数: 1109 | 31 lz的意思是,java的函数只能pass by value,而不能by reference/pointer,所以无法
在函数内修改一个变量的值。
如果传这个变量的话的确是这样,尤其是Integer或者String类,还是immutable的。
但可以通过传一个这个变量的wrapper object或者只包含这个变量的size为1的数组,
就可以实现这个。
不过没什么太大意义,所以估计lz和面试官发生了分歧。 |
|
l*n 发帖数: 529 | 32 无聊写了个。a、b都是正数,其他符号的组合可以另写个wrapper函数。
String subtract(String a, String b) {
boolean minus = false;
if (b.length() > a.length() || b.length() == a.length()
&& a.compareTo(b) < 0)
minus = true;
if (minus) {
String tmp = a;
a = b;
b = tmp;
}
int alen = a.length();
int blen = b.length();
StringBuilder sb = new StringBuilder(
new String(new char[a.length()]).replace('\0', '0'));
int carry = 0;
for (int i = 0; i < a.length();... 阅读全帖 |
|
m****v 发帖数: 88 | 33 Dropbox:
2sum, 3sum both with duplicates
30分钟写出来了 然后挂了 可能bar比较高
Pinterest:
Map/reduce top 10 ip address
java iterator wrapper (more functions 忘了 反正挺难写的). input is a
original queue iterator
symmetric tree
get the kth element uniformly (swap by 1/k possibiliy) |
|
m****v 发帖数: 88 | 34 Dropbox:
2sum, 3sum both with duplicates
30分钟写出来了 然后挂了 可能bar比较高
Pinterest:
Map/reduce top 10 ip address
java iterator wrapper (more functions 忘了 反正挺难写的). input is a
original queue iterator
symmetric tree
get the kth element uniformly (swap by 1/k possibiliy) |
|
f********x 发帖数: 2086 | 35 挺好的一个startup
貌似就这轮表现不好
开始不难,网上很多解答
1,两个stack实现Q
这样存入是O(1),取出平均是O(1)(个别会是O(n))
2,两个Q实现stack
存入是O(1),取出是O(n);
或者存入是O(n),取出是O(1)
Follow up是改进,提示是这两个题可以用同样方法改进;可以处理一下(比如用个
wrapper啥的)元素(int)再放入结构
实在想不出来,求大神解答 |
|
l***i 发帖数: 1309 | 36 HashSet这个,老老实实写个HashTable with rehashing不行么?
ThreadSafe就做个Wrapper控制所有的read/write? |
|
m*****k 发帖数: 731 | 37 这题就是writer间的同步问题,都不用考虑reader, getlastSecCount()读的都是历史
数据啦。
Java 5 java.util.concurrent.atomic provides wrapper classes for int and long
that can be used to achieve this atomically without usage of
Synchronization
AtomicInteger 典型use case. |
|
b********r 发帖数: 620 | 38 REST vs SOAP
REST SOAP
Cached Yes over Get No due to POST
Transport protocol HTTP/HTTPS (currently tied to) Lots of like HTTP,
SMTP, etc.
Stateless Yes only Can support stateful
Stricter No Yes due to WSDL
XML Wrapper No (preferred in mobile devices) Yes
Message format XML, JSON, etc. XML
Misc More features such as security, reliable messaging, atomic
transaction
Architecture style Protocol |
|
y*e 发帖数: 9799 | 39 Use a stack to track the level of tree nodes
Input:
Node root
----------
provide a wrapper class for Node which contains level
NodeWrapper{
Node node
int level
}
Stack stack;
List list;
int i = 1;
stack.push (root, i)
while (stack not empty){
NodeWrapper current = stack.pop();
list.append(current);
if (current->right != null){
stack.push(right, i + 1);
}
if (current->left != null){
stack.push(left, i + 1);
}
}
The list contains in order traversal o... 阅读全帖 |
|
t*****t 发帖数: 86 | 40 我第一次做也是用了一个类似lz的wrapper class来记录状态然后TLE了,后来发现如果
是要记录之前状态的话可以用level order traversal的思路,queue里面放List<
String>,每次都针对List中最后一个String进行操作。在while循环内部用一
个for循环遍历一整层的节点,这样的话只需要一个HashSet来记录哪些点被访问过用来
去重就好,不需要针对每个路径专门记录。 |
|
g********t 发帖数: 212 | 41 Depends on what you want to do next:
1) Stepping stone to smaller startups --> "AWS" on your resume alone will be
helpful enough. Use your spare time and your free AWS account to get
familiarized with AWS (not your daily works working on a small part of it).
Also take advantage of AWS internal metrics/on-calls to know what's
happening with the startups, which ones are good.
2) Stepping stone to other big companies such as FLG or even M$ --> try join
AWS's "front-line" products, i.e. those newly... 阅读全帖 |
|
|
y****9 发帖数: 252 | 43 如果Java8 加了lambda就是FP,那C#都已经FP好多年了。C# 3都多少年了,现在6都快
出了。
回答楼主的问题,我还是用得很多的,没有用到visitor这样需要2D,strategy经常用
,factory也会顺带常用,还有instance,wrapper更加到处都是。。
设计模式说白了就是代码结构,结构好,维护管理方便。但对于产品迭代和扩展很快的
行业和公司来说,其实也没这么重要,因为重构是常有的事情。 数据结构使用恰当,
效率高,没有漏洞,按时交付就好。 |
|
i*******a 发帖数: 61 | 44 1 best time to sell and buy stock1
2 find k largest/smallest in n sorted list
3 lru cache
4 design etsy database schema
5 find element in rotated array
~~~~~~~~~~~~~~~~~~~~~~
都不难,可惜挂了,自己分析,可能是1 第四轮印度小哥说的优化用db polymorphism
没懂(真的不太懂这个)2自己写题慢了(可是聊天20分钟,面试官也没有要出下一题
的意思)
~~~~~~
dropbox的在线题目
就是一个矩阵,来表示n个人之间的关系,可以是朋友(用f)或者是敌人(e), 俄且
这个关系是双向的,现在 给你一个string的关系,还有两个人的id判断这个string的
关系是合法还是非法的,string关系比如 feffeef 是可以倒回来的。
~~~~~~~~~~
马上要面L家了,想请教一下几道经典题,new grad小白,啥都不懂,请各位大牛不吝
赐教:
1library design题,design一个java... 阅读全帖 |
|
r**********g 发帖数: 22734 | 45 If the error is random, then we can have an almost certainly correct wrapper
over compute(): Create a set, return the first duplicate number
generated by compute. If error is not random then need majority |
|
b*******w 发帖数: 56 | 46
wrapper
Cool. Could you elaborate on the majority voting? Choosing the value of more
than halve? |
|
s********x 发帖数: 81 | 47 请问一下,我上面的思路可行吗?
wrapper |
|
t********5 发帖数: 522 | 48 严格意义上来说 网站前端只可以用html、css和js来写。
但是现在这个时代已经没有人只用这些了,大家会用大量的工具来做这件事情,所以可
以拆分为前端可以用:
html: 包括但不限于各种template language比如mustache, handlebars等等。
css: 包括但不限于各种神一样的wrapper(主要是可以帮你处理cross browser的兼容
性问题),比如LESS, Stylus等等;还有就是一些style guide framework之类的东西
比如twtr的bootstrap。
javascript: 包括但不限于各种js的辅助语言(他们都会compile成js)比如
CoffeeScript,
LiveScript等等。另外还有很多诸如jQuery, Backbone.js之类的,也算作js的一部分
然后同时我们现在也知道了有一种东西叫做SOA,所以细分下来现在前端已经很多时候
拥有自己的app了,比如你可以有一个Python或者Node.js的web app来与后端的API交互
,后端的API和各种backend services可能是由Ja... 阅读全帖 |
|
c***z 发帖数: 6348 | 49 个人理解,DL可以看作一个wrapper,底层可以仍然使用logit或者SVM或者anything |
|
z****e 发帖数: 54598 | 50
其实不是这样的,用来做web script的话,py就很蛋疼
django很难用,ror强太多
py主要优势在于做一个wrapper,尤其是c这些,以前用来替代bash用得比较多
很多infra的攻城狮在用,但是自从go出来之后,很多infra的工具都用go写了
比如docker,脚本其实就是一个dsl,需要对某个特定领域做优化
一旦离开这些领域,脚本就会从美酒变成毒药 |
|