楼主: KimiZJ
跳转到指定楼层
上一主题 下一主题
收起左侧

Google onsite

🔗
 楼主| KimiZJ 2016-12-15 03:46:32 | 只看该作者
全局:
您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
回复

使用道具 举报

🔗
 楼主| KimiZJ 2016-12-15 03:55:10 | 只看该作者
全局:
您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
回复

使用道具 举报

🔗
 楼主| KimiZJ 2016-12-15 13:30:02 | 只看该作者
全局:
KimiZJ 发表于 2016-12-15 03:15
额。。的确可以,我当时没用这思路,面试官也没给这个,给了个更复杂的

忽然想起来,当时第四题面试官不让用extra memory,就是拿hashmap那种记录不行,所以数组的这个应该也不可以
回复

使用道具 举报

🔗
sunraincyq 2016-12-16 12:16:40 | 只看该作者
全局:
您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
回复

使用道具 举报

🔗
sunnyroom 2016-12-19 13:54:21 | 只看该作者
全局:
KimiZJ 发表于 2016-12-14 13:12
转成数字,列方程组 a+b+c = y1, a^2 + b^2 + c^2 = y2这样,方程组有专门的程序求,不用写。。。面试官 ...

a^2 + b^2 + c^2 = y2
怎么得来的?
回复

使用道具 举报

🔗
 楼主| KimiZJ 2016-12-19 13:56:13 | 只看该作者
全局:
sunnyroom 发表于 2016-12-19 13:54
a^2 + b^2 + c^2 = y2
怎么得来的?

就是列方程组啊,三个未知量就列三元三次方程组,方程组怎么解不用管
回复

使用道具 举报

🔗
zzgzzm 2016-12-19 14:56:33 | 只看该作者
全局:
第一轮地里已有面经。我写过一个dfs解。一定要将target string 预处理类似于:计算pos[i][c-'a']=从index i 起第一个出现char c的index. 将这个2D array 存起来,时间不过O(string length), 但对于庞大的字典trie 免去相同prefix 的重复计算。然后在trie 中dfs 同时更新max word length
回复

使用道具 举报

🔗
zzgzzm 2016-12-19 15:09:27 | 只看该作者
全局:
您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
回复

使用道具 举报

🔗
工图新一 2016-12-19 16:06:53 | 只看该作者
全局:
zzgzzm 发表于 2016-12-19 15:09
我也是这样预处理target, 但时间实际O(length (target))就可以了。因为对每个char, 一但找到下一个的话就 ...

求解怎么可以在len(target)的时间复杂度内预处理target?
回复

使用道具 举报

🔗
chaosMonkey 2016-12-19 20:17:03 | 只看该作者
全局:
对于第一题利用trie的思路稍微写的点代码,不知道这样行不行。遍历建好的trie,看当前索引位置的字符是不是能在trie的节点中,如果在,target串继续遍历下一个字符,同时还要考察,下一个字符在当前这个节点中是不是存在。
  1. void dfs(TrieNode* root, int idx, string s, int &maxLen, string& res){
  2.         if(root->isWord){
  3.                 for(auto a : root->strs){
  4.                         if(a.size()>maxLen){
  5.                                 maxLen=a.size();
  6.                                 res=a;
  7.                         }
  8.                 }
  9.         }
  10.         if(idx==s.size())
  11.                 return;

  12.         if(root->child[s[idx]-'a']){
  13.                 dfs(root->child[s[idx]-'a'], idx+1,s, maxLen, res);
  14.         }
  15.         dfs(root, idx+1,s,maxLen,res);
  16. }
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

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