123
返回列表 发新帖
楼主: zchang3
跳转到指定楼层
上一主题 下一主题
收起左侧

10钟前google电面

🔗
hzshuai 2015-8-30 21:25:22 | 只看该作者
全局:
写lz分享,题目不错,从naive-时间优化-dp-空间优化,各种follow up,很好的一题
回复

使用道具 举报

全局:
string题,第一问和leetcode上的shortest palindrome 基本一样,换成了插在结尾,问题不大,讨论了下时间复杂度。
follow up问如果插字符在任何地方,看到过dp解法,但是想不起来也没推出来。搜了一下,类似 pku1159,
follow-up写了一下,大家看一下是否对了呢?
题意就是 求一个字符串最少用多少个字符使得整个字符串成为回文串。
Ab3bd,返回2
class Solution
{
public:
        int addChar(string str)
        {
                if(str.size() < 2)
                        return 0;

                string revStr(str.rbegin(), str.rend());

                return str.size() - LCS(str, revStr);
        }

        int LCS(string a, string b)
        {
                if(a.size() < 1 || b.size() < 1)
                        return 0;
                vector<int> pre(b.size()+1);

                for(int i = 1; i <= a.size(); i++)
                {
                        vector<int> cur(b.size()+1);
                        for(int j = 1; j <= b.size(); j++)
                        {
                                if(a[i-1] == b[j-1])
                                        cur[j] = pre[j-1] + 1;
                                else
                                        cur[j] = max(cur[j-1], pre[j]);
                        }
                        pre = cur;
                }
                return pre[b.size()];
        }
};


//int main()
//{
//        string str("AC");
//        Solution ss;
//        cout<<ss.addChar(str);
//        int i = 0;
//}
回复

使用道具 举报

🔗
rb131108 2015-9-9 13:31:29 | 只看该作者
全局:
感觉是不是可以反转字符串然后用longest common subsequence做?
回复

使用道具 举报

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

非常赞的思路!启发很大!
回复

使用道具 举报

🔗
leanlee 2015-9-16 04:59:47 | 只看该作者
全局:
这还不叫黑。。。。。。。
回复

使用道具 举报

🔗
applelegend 2015-9-16 05:32:04 | 只看该作者
全局:
什么叫shortest palindrome呀,只知道longest palindrome.
回复

使用道具 举报

🔗
douya 2015-9-21 09:27:20 | 只看该作者
全局:
感谢分享,楼主有拿onsite吗?
回复

使用道具 举报

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

本版积分规则

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