新闻从业者 :)# Joke - 肚皮舞运动
l*1
1 楼
今天看到几道a家onsite不太懂,求讨论,求大牛给code
1)写一段代码,给一个字符串,例如"30*(5+10)",输出计算结果。
知道大概是用两个stack,但有好多细节不懂,如怎么只扫描一个这个字符串就把数字
和operator放在两个stack里?还有就是如何在存operator的stack中定义优先级?
2)现在给定一个函数,f(x),x在某值之前是非递减的,在某值之后是非递增的。设计一
个算法快速查找这个值。
知道应该改binary search,但具体的判定array[middle]的条件有什么好的想法?怎么
选择仍哪一半啊?因为array[middle]可能同时大于或小于array[start],array[end]
3)有一个奇怪的linkedlist,除了next pointer还有一个random pointer指向一个随机
的节点。问如何实现clone函数。
这个题貌似很多地方都考,没大看懂题意,是问如何实现linkedlist里的clone函数?
如果是,怎么做是最好呢?
1)写一段代码,给一个字符串,例如"30*(5+10)",输出计算结果。
知道大概是用两个stack,但有好多细节不懂,如怎么只扫描一个这个字符串就把数字
和operator放在两个stack里?还有就是如何在存operator的stack中定义优先级?
2)现在给定一个函数,f(x),x在某值之前是非递减的,在某值之后是非递增的。设计一
个算法快速查找这个值。
知道应该改binary search,但具体的判定array[middle]的条件有什么好的想法?怎么
选择仍哪一半啊?因为array[middle]可能同时大于或小于array[start],array[end]
3)有一个奇怪的linkedlist,除了next pointer还有一个random pointer指向一个随机
的节点。问如何实现clone函数。
这个题貌似很多地方都考,没大看懂题意,是问如何实现linkedlist里的clone函数?
如果是,怎么做是最好呢?