一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 766|回复: 9
收起左侧

Bloomberg intern 谜之跪经

[复制链接] |试试Instant~ |关注本帖
Tedko 发表于 2016-10-5 03:06:31 | 显示全部楼层 |阅读模式

() @ - -  |

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?获取更多干货,去instant注册!

x
给你一个 变量,怎么不 access 变量改变量的值。可不可能。
. 鍥磋鎴戜滑@1point 3 acres
我说要看依赖环境。面试官有些不满,问我可能不可能。然后我就说可能……可以用 overflow 去改这个变量;



然后面试官问我具体怎么操作。我说可以用 strcp 之类的函数,然后把 terminal \0 给去掉,然后就能 hit 到这个 variable 了。也可以用 c 里面的别的 unsafe function。 写了个例子


.1point3acres缃


int main() {

int a;

//string something

strcp(something without terminate 0)// or pass something printed by other program such as py, pass the arg in bash
. 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
}

第三题:

第二题的 followup。问我内存有几块。

我说 heap 和 stack。面试官感觉笑了下。然后问我区别在哪。我基本就是按照标准的说法,一个顺序不一样,一个是 stack 出了 scope 按照 c calling convention 就会被pop 走。heap 要自己维护;然后有 GC 的话是 heap 在被 GC 处理。

然后面试官问,你是对的。那么 static int a 是在哪里。。。然后我发现我说错了,内存其实有三块,stack heap 还有 放 global, static 和 code 的那个地方……但是我又不是很确定,想了一下说不在 heap 也不在 stack。
-google 1point3acres
. Waral 鍗氬鏈夋洿澶氭枃绔,

最后问我有没有办法去改 static int。我回答 access 变量就能改;用 overflow 的方法就改不了。

最后面试官说 okok,我们做做算法题吧。



第四题:
. visit 1point3acres.com for more.
linked list 找 loop。不写代码,直接说。一分钟解决

第五题:

2 sum。我直接说 hash table。问了下算法复杂度。答对了。两三分钟解决

第六题:. Waral 鍗氬鏈夋洿澶氭枃绔,

2 sum 的 followup : n sum。
鏉ユ簮涓浜.涓夊垎鍦拌鍧.
不告诉你 n 是几。让你返回 t or f。n 最大是数组长度 n。如果任意个数加起来是 target, 返回 true

想了一下可能要2 pointer。不确定。面试官说我们没时间了,你直接大概说下,分析下复杂度。



我说可以一开始把太大的数给删掉,每次都可以用n ptr 删。然后剩下部分暴力 loop。最后复杂度多少我没想清楚,就说可能是 k^k



面完之后感觉要爆炸……虽然都说出来了,但是实在是不按照套路来啊……面到一半问我知道什么是 vtable 么。我说……知道……想着不会问我这个吧?然后面试官说,好啊,那就不问了,做算法题…… 鏉ユ簮涓浜.涓夊垎鍦拌鍧.

评分

1

查看全部评分

 楼主| Tedko 发表于 2016-10-5 03:07:19 | 显示全部楼层
真是谜死了……虽然我每道题都基本答出来了,但面试官似乎觉得我反应不够快……但是当时实在是有点蒙逼……我面到一半的时候都已经在回忆 C++ vtable 详细了……但是我简历主要是写 js 和 mobile 的……    先聊为什么 bloomberg ,聊聊项目,五分钟。    第一题:  2 arrary 合并 比如 => 。 用 hash table。  我在重复元素的地方卡了一下。没想到可以直接计算数量。面试官给了一个 hint,然后写完 code 了。面试官不懂 js 语法,最后花了十二三分钟写完+解释完。面试官觉得没有 bug free,但是最后说了 fair enough,我也把 js 解释清楚了    第二题:  C/C++ 问题。
回复 支持 反对

使用道具 举报

huai10 发表于 2016-10-5 03:27:50 | 显示全部楼层
2 sum 的 followup : n sum。  不告诉你 n 是几。让你返回 t or f。n 最大是数组长度 n。如果任意个数加起来是 target, 返回 true

-google 1point3acres补充内容 (2016-10-5 03:28):
应该是 combination sum 了吧
回复 支持 反对

使用道具 举报

liujiajunwin 发表于 2016-10-5 05:39:23 | 显示全部楼层
复杂度应该是降阶吧,比如有数组里面有n个元素求k sum,复杂度应该是n^(k - 1)
回复 支持 反对

使用道具 举报

leixiang5 发表于 2016-10-5 06:27:28 | 显示全部楼层
"给你一个 变量,怎么不 access 变量改变量的值。可不可能"   可不可以利用pointer来改?
回复 支持 反对

使用道具 举报

leixiang5 发表于 2016-10-5 06:34:57 | 显示全部楼层
“第二题的 followup。问我内存有几块。”
应该有3块吧。。stack, heap, and text.

stack是hold所有function里的variables...heap是dynamic allocated memory..

static int a也在heap里。。只不过是heap区分了一个global segment给global variables而已。
回复 支持 反对

使用道具 举报

haveto 发表于 2016-10-5 07:07:11 | 显示全部楼层
bloomberg intern也必须cpp嘛? python和java里都没哟pointer这个概念啊
回复 支持 反对

使用道具 举报

 楼主| Tedko 发表于 2016-10-5 09:48:21 | 显示全部楼层
leixiang5 发表于 2016-10-5 06:27
"给你一个 变量,怎么不 access 变量改变量的值。可不可能"   可不可以利用pointer来改?

pointer就是 access 变量了。他说原话是变量名(比如 target) 在之前之后所有地方都没出现过。也没有 Pointer
回复 支持 反对

使用道具 举报

 楼主| Tedko 发表于 2016-10-5 13:07:31 | 显示全部楼层
huai10 发表于 2016-10-5 03:27. more info on 1point3acres.com
2 sum 的 followup : n sum。  不告诉你 n 是几。让你返回 t or f。n 最大是数组长度 n。如果任意个数加起 ...

这题有什么好思路么
回复 支持 反对

使用道具 举报

 楼主| Tedko 发表于 2016-10-5 13:10:25 | 显示全部楼层
leixiang5 发表于 2016-10-5 06:34.1point3acres缃
“第二题的 followup。问我内存有几块。”
应该有3块吧。。stack, heap, and text.

http防和谐://防和谐www防和谐.cn防和谐blogs.com/防和谐stoneJin/archive/2011/09/21/2183684.html

参考这个
回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2016-12-6 03:28

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表