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

10钟前google电面

全局:

2015(10-12月) 码农类General 硕士 全职@google - 网上海投 - HR筛选  | | Other | 应届毕业生

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

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
刚刚面完,目测已跪,发面经攒人品。
string题,第一问和leetcode上的shortest palindrome 基本一样,换成了插在结尾,问题不大,讨论了
您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限 或 查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
帮助很大,以后有面经会继续回馈地里。
祝各位找工作顺利~走过路过打赏点米啊!

评分

参与人数 5大米 +31 收起 理由
douya + 3 感谢分享!
whdawn + 10
guzi + 5 感谢分享!
lchen77 + 3 感谢分享!
Linzertorte + 10 感谢分享!

查看全部评分


上一篇:Uber电面-4sum
下一篇:Cerner onsite

本帖被以下淘专辑推荐:

全局:
尝试了一下dp解法:dp[i][j]存从s[i]到s[j]的substring能够组成的最短palindrome
  1. public static String shortestPalindrome2(String s) {
  2.         if (s == null || s.length() <= 1) {
  3.             return s;
  4.         }
  5.         String[][] dp = new String[s.length()][s.length()];
  6.         for (int i = 0; i < s.length(); i++) {
  7.             dp[i][i] = String.valueOf(s.charAt(i));
  8.         }
  9.         for (int len = 2; len <= s.length(); len++) {
  10.             for (int i = 0; i <= s.length() - len; i++) {
  11.                 if (s.charAt(i) == s.charAt(i + len - 1)) {
  12.                     if (len == 2) {
  13.                         dp[i][i + 1] = s.substring(i, i + 2);
  14.                     } else {
  15.                         dp[i][i + len - 1] = s.charAt(i) + dp[i + 1][i + len - 2] + s.charAt(i + len - 1);
  16.                     }
  17.                 } else {
  18.                     if (len == 2) {
  19.                         dp[i][i + 1] = s.substring(i, i + 2) + s.charAt(i);
  20.                     } else {
  21.                         dp[i][i + len - 1] = dp[i + 1][i + len - 1].length() < dp[i][i + len - 2].length() ?
  22.                                 s.charAt(i) + dp[i + 1][i + len - 1] + s.charAt(i) : s.charAt(i + len - 1) + dp[i][i + len - 2] + s.charAt(i + len - 1);
  23.                     }
  24.                 }
  25.             }
  26.         }
  27.         return dp[0][s.length() - 1];
  28.     }
复制代码
回复

使用道具 举报

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

使用道具 举报

全局:
请问lz是用KMP算法么?感觉店面就考KMP算法好难。。。。
回复

使用道具 举报

🔗
 楼主| zchang3 2015-8-29 03:46:18 | 只看该作者
全局:
宝贝忆彼岸 发表于 2015-8-29 03:05
请问lz是用KMP算法么?感觉店面就考KMP算法好难。。。。

一开始写了暴力,问优化的时候写了KMP,因为刷过才记得,所以当时还觉得很走运。。。
回复

使用道具 举报

🔗
 楼主| zchang3 2015-8-29 03:47:35 | 只看该作者
全局:
laurie洁 发表于 2015-8-29 03:28
尝试了一下dp解法:dp[j]存从s到s[j]的substring能够组成的最短palindrome

谢谢!学习了!
回复

使用道具 举报

🔗
hulahu 2015-8-29 03:55:17 | 只看该作者
全局:
这还不是叼难。 这难的题。 楼主是面哪个office?
回复

使用道具 举报

🔗
洁洁洁fox 2015-8-29 04:02:01 | 只看该作者
全局:
zchang3 发表于 2015-8-29 03:46
一开始写了暴力,问优化的时候写了KMP,因为刷过才记得,所以当时还觉得很走运。。。

可以问问KMP怎么写吗?想学习一下~~
回复

使用道具 举报

🔗
donghao 2015-8-29 04:26:38 | 只看该作者
全局:
第二个题目 任何 位置应该可以dp接, geeksforgeeks有原题
回复

使用道具 举报

🔗
 楼主| zchang3 2015-8-29 05:15:26 | 只看该作者
全局:
laurie洁 发表于 2015-8-29 04:02
可以问问KMP怎么写吗?想学习一下~~

  1. string solver(string a){
  2.     string re=a;
  3.     reverse(re.begin(),re.end());
  4.     string t=re+"#"+a;
  5.     vector<int> p(t.size(),0);
  6.     for (int i = 1; i < t.size(); ++i) {
  7.         int j = p[i - 1];
  8.         while (j > 0 && t[i] != t[j])
  9.             j = p[j - 1];
  10.         j+=(t[i]==t[j]);
  11.         p[i] = j;
  12.     }
  13.     for(int i=0;i<p.size();i++)
  14.         cout<<p[i]<<' ';
  15.     cout<<endl;
  16.     return a.substr(0,a.size()-p[t.size() - 1]) + re;
  17. }
复制代码

补充内容 (2015-8-29 05:17):
中间的cout忘删了...原题是在 https://leetcode.com/problems/shortest-palindrome/
回复

使用道具 举报

🔗
 楼主| zchang3 2015-8-29 05:19:55 | 只看该作者
全局:
hulahu 发表于 2015-8-29 03:55
这还不是叼难。 这难的题。 楼主是面哪个office?

小哥说google now,前几天看新闻说已经全体离职了?记不清了一开始挺紧张,杂音也大听不很清
回复

使用道具 举报

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

本版积分规则

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