推荐:数据科学课程和书籍清单以及培训讲座


一亩三分地论坛

 找回密码
 获取更多干活,快来注册

一亩三分地官方iOS手机应用下载
查看: 951|回复: 7
收起左侧

脸家昂赛特

[复制链接] |试试Instant~ |关注本帖
laiptony 发表于 2017-8-2 19:17:56 | 显示全部楼层 |阅读模式

2017(4-6月) 码农类 博士 全职@Facebook - 内推 - 技术电面 Onsite |Pass在职跳槽

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

您需要 登录 才可以下载或查看,没有帐号?获取更多干活,快来注册

x
面完才发现有很多其实都是LC(变形)题

. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴店面
hamming distance problems (LC461, LC477)

昂賽特 (~:变形)
a) parse HTML and build a DOM tree
b) ~LC283 ~LC29 还有一题没时间写完只讲了思路
c) memcache + hashtable (system design)
d) behavior + ~LC78

coding都要求写测试

本帖被以下淘专辑推荐:

flgt2014 发表于 2017-8-2 19:37:58 | 显示全部楼层
楼主 ‘分析HTML建DOM树‘这题 能否展开说说?具体有什么要求?
回复 支持 反对

使用道具 举报

bearicc 发表于 2017-8-2 23:50:25 | 显示全部楼层
楼主方便透露下system design准备了多久吗?给自己点信心。。
回复 支持 反对

使用道具 举报

bearicc 发表于 2017-8-3 00:59:15 | 显示全部楼层
自己试着做了一下第一题:
  1. #include <iostream>.1point3acres缃
  2. #include <string>
  3. #include <vector>
  4. #include <stack>
  5. #include <tuple>

  6. using namespace std;

  7. struct TreeNode {.鐣欏璁哄潧-涓浜-涓夊垎鍦
  8.     string tag;
  9.     string content;
  10.     string tail; 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
  11.     vector<TreeNode*> next;
  12.     TreeNode(string tag):tag(tag) {}
  13. };

  14. pair<string, string> read(const string& html, int& i) {
  15.     const int N = html.size();
  16.     string text, tag;
  17.     while (i < N && html[i] != '<') {
  18.         text += html[i++];
    . From 1point 3acres bbs
  19.     }
  20.     ++i;
  21.     while (i < N && html[i] != '>') {
  22.         tag += html[i++]; 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
  23.     }. Waral 鍗氬鏈夋洿澶氭枃绔,
  24.     ++i; // skip '>'
  25.     return {text, tag};
  26. }
    鏉ユ簮涓浜.涓夊垎鍦拌鍧.

  27. TreeNode* parse(string html) {
  28.     const int N = html.size();
  29.     int i = 0;
  30.     string text, tag;
  31.     stack<TreeNode*> mystack;

  32.     tie(text, tag) = read(html, i);
  33.     if (tag.empty()) {
  34.         return NULL;
  35.     }
  36.     TreeNode* root = new TreeNode(tag);
  37.     mystack.push(root);
  38.     while (i < N) {. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
  39.         tie(text, tag) = read(html, i);
  40.         if (tag[0] != '/') {. 1point 3acres 璁哄潧
  41.             mystack.top()->content = text;
  42.             TreeNode* p = new TreeNode(tag);
  43.             mystack.top()->next.push_back(p);
  44.             mystack.push(p);
  45.         } else {. visit 1point3acres.com for more.
  46.             if (mystack.top()->next.empty()) {. 1point3acres.com/bbs
  47.                 mystack.top()->content = text;.鐣欏璁哄潧-涓浜-涓夊垎鍦
  48.             } else {
  49.                 mystack.top()->tail = text;
  50.             }
  51.             mystack.pop();
  52.         }
  53.     }
  54.     return root; 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
  55. }

  56. void test(TreeNode* root) {
  57.     if (!root) {. from: 1point3acres.com/bbs
  58.         return;
  59.     }. from: 1point3acres.com/bbs
  60.     cout << "(" << root->tag << ") (" << root->content << ") (" << root->tail << ")" << endl;-google 1point3acres
  61.     for (TreeNode* p: root->next) {
  62.         test(p);
  63.     }
  64. }. From 1point 3acres bbs

  65. int main() {
  66.     string html = "<html><head><title>Test</title></head><body>It works!</body></html>";
  67.     cout << html << endl;
  68.     TreeNode* root = parse(html);
  69.     test(root);
  70.     return 0;
  71. }
复制代码
回复 支持 反对

使用道具 举报

say543 发表于 2017-8-3 14:58:23 | 显示全部楼层
memcache + hashtable (system design) 是不是就是设计一个key value store 有什么考察点吗?
回复 支持 反对

使用道具 举报

csytracy 发表于 2017-8-4 03:09:42 | 显示全部楼层
谢谢lz分享!我最关心的是:系统设计怎么复习?有没有推荐的书?九章系统设计课已经上过了。大牛对fresh phd有什么建议吗?
回复 支持 反对

使用道具 举报

 楼主| laiptony 发表于 2017-8-5 21:00:24 | 显示全部楼层
say543 发表于 2017-8-3 14:58
memcache + hashtable (system design) 是不是就是设计一个key value store 有什么考察点吗?

I think communication is the most important key. Discuss with the interviewer and make sure we design a system that satisfy the given constraints.
回复 支持 反对

使用道具 举报

 楼主| laiptony 发表于 2017-8-5 21:10:28 | 显示全部楼层
bearicc 发表于 2017-8-2 23:50. 鍥磋鎴戜滑@1point 3 acres
楼主方便透露下system design准备了多久吗?给自己点信心。。

Hard to estimate how long I prepared because a lot of system design concepts I learned from work.
Most of the system design problems are open-ended, so communication is very important.
I treat system design interviews as "checking if we can design a system together if we are teammates" (and "figure out what the interviewer wants to hear").
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

手机版|小黑屋|一亩三分地论坛声明

custom counter

GMT+8, 2017-8-22 10:02

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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