由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 专家们,find the longest common substring of two strings
相关主题
一道string matching的题目请问一个题目
做题做得很郁闷,求指点g电面
50行code能解决addbinary 问题么DP通项公式
求教电面遇到的一道pattern match的实现Ask a google interview question(3)
求教一个string match 的 dp 解法贡献一个朋友在Google的面题一枚。
一个基本的string问题问一个面试问题
一周多了。。。等的太不淡定了。。。 说两个面经吧leetcode online judge Longest Palindromic Substring memory limit exceeded
问到题 Memory Limit Exceeded: Longest Palindromic Substring
相关话题的讨论汇总
话题: substring话题: string话题: string1话题: longest话题: strings
进入JobHunting版参与讨论
1 (共1页)
I**A
发帖数: 2345
1
不许用DP,suffix tree
http://en.wikipedia.org/wiki/Longest_common_substring_problem
笨法子是什么?
f*********5
发帖数: 576
2
string1
|-----------------|
location1 location2
I**A
发帖数: 2345
3
没看懂
string1怎么move?
"in the intersection for each step" means?

【在 f*********5 的大作中提到】
: string1
: |-----------------|
: location1 location2

f*********5
发帖数: 576
4
string1: abcabcd
string2: abcd
1) abcabcd
abcd
intersection: a and d
2) abcabcd
abcd
intersection: ab/cd
......

【在 I**A 的大作中提到】
: 没看懂
: string1怎么move?
: "in the intersection for each step" means?

d**e
发帖数: 6098
5
为什么要用笨法子呢?
brute force应该没问题啊。我没具体验证,我想大概应该是这样,
从string_1的第一个char开始循环,比如index是i,和string_2的
第一个char开始比较,index是j,遇到相同,侧两个string的index
都增一,否则看是否得到最长的的substring,然后string_1的index
复位回i,j侧增一,直到j=length(string_2),然后到下一热循环(i+1)
下面为伪码
int len1 = length(string_1)
int len2 = length(string_2)
int max_len = 0
int left_idx = -1
int right_idx = -1
for i = 0 to len1 - 1
loop
k = i
tmp_max_len = 0
for(j = 0; j < len2 - 1; )
if string_1[k] == string_2[j]
then
k++
j++


【在 I**A 的大作中提到】
: 不许用DP,suffix tree
: http://en.wikipedia.org/wiki/Longest_common_substring_problem
: 笨法子是什么?

I**A
发帖数: 2345
6
thanks,这个好理解。。
复杂度o(n^2*m) where n is length(s1) and m is length(s2)
如果我已经有了一个算法,就是得到一个string的longest repeated substring,
有没有办法调用这个function来求 longest common substring of two strings?

【在 d**e 的大作中提到】
: 为什么要用笨法子呢?
: brute force应该没问题啊。我没具体验证,我想大概应该是这样,
: 从string_1的第一个char开始循环,比如index是i,和string_2的
: 第一个char开始比较,index是j,遇到相同,侧两个string的index
: 都增一,否则看是否得到最长的的substring,然后string_1的index
: 复位回i,j侧增一,直到j=length(string_2),然后到下一热循环(i+1)
: 下面为伪码
: int len1 = length(string_1)
: int len2 = length(string_2)
: int max_len = 0

1 (共1页)
进入JobHunting版参与讨论
相关主题
Memory Limit Exceeded: Longest Palindromic Substring求教一个string match 的 dp 解法
有人同看Longest Palindromic Substring 这道题么?一个基本的string问题
问一个Pinterest的题目一周多了。。。等的太不淡定了。。。 说两个面经吧
cloudera的codebility的 test问到题
一道string matching的题目请问一个题目
做题做得很郁闷,求指点g电面
50行code能解决addbinary 问题么DP通项公式
求教电面遇到的一道pattern match的实现Ask a google interview question(3)
相关话题的讨论汇总
话题: substring话题: string话题: string1话题: longest话题: strings