avatar
最简单的倒立方法# Joke - 肚皮舞运动
n*r
1
原帖在这里:
http://www.mitbbs.com/article_t/JobHunting/31996705.html
题目是:
“2. Given two strings that one string contains the other string, while
the other string could be split into any set of substrings. Please find
the minimum split time. Example: "apple pie is deicious" contains
"applepie"'s substring set "apple" and "pie", so the minimum split time
is 1”
看回帖有人说是DP + recursive, 百思不得其解
请教一下大家~
avatar
r*e
2
最简单的倒立方法 j.jpg
avatar
a*m
3
dp+recursive? 这种说法有点奇怪。也许说的是recursive+memo. 都差不多。不过dp好像定义也没有那么严格。
感觉是dp问题。每个分隔点可以完全分隔或者连接两边不同数目的字符加上两遍被隔
开的两块的结果。
avatar
e*t
4
鸡大无头。

【在 r*********e 的大作中提到】
: 最简单的倒立方法 j.jpg
avatar
z*e
5
这种问切成2边的题目,有的好像只讨论其中一边.
比如在CLRS上,rod cutting问题,和这个这个形似.
avatar
a*e
6
好大的龟头!
avatar
t*7
7
也算是DP+RECUR
其实RECUR可解了,只是开销太大,要O(2^n)
如果加一个中间数据结构,动态记录的话,只要O(n^2)
avatar
f*d
8
hao
avatar
n*r
9
恩,好像是这样, thanks!

好像定义也没有那么严格。

【在 a********m 的大作中提到】
: dp+recursive? 这种说法有点奇怪。也许说的是recursive+memo. 都差不多。不过dp好像定义也没有那么严格。
: 感觉是dp问题。每个分隔点可以完全分隔或者连接两边不同数目的字符加上两遍被隔
: 开的两块的结果。

avatar
a*a
10
。。。。哈哈
我刚开始还没看明白图片
看了这句才明白

【在 a*******e 的大作中提到】
: 好大的龟头!
avatar
n*r
11
谢谢啦~
能不能解释下这两个复杂度呢?
实在是想不明白。

【在 t*********7 的大作中提到】
: 也算是DP+RECUR
: 其实RECUR可解了,只是开销太大,要O(2^n)
: 如果加一个中间数据结构,动态记录的话,只要O(n^2)

avatar
c*h
12
猛一看还真像
avatar
g*s
13
yes. i agree with you.
It is a just normal DP question. You can implement it with recusive function
, or just for-loop.
1) build v(x,y),1<=x<=y<=n; v(x,y)=true if sub string bwn [x,y] is valid O
(N^2)
2) f(n) = min { (f(i) + 1 if v(i+1,n)=true} ; --if no such i, f(n)=infinite
O(N^2)
return f(N)

好像定义也没有那么严格。

【在 a********m 的大作中提到】
: dp+recursive? 这种说法有点奇怪。也许说的是recursive+memo. 都差不多。不过dp好像定义也没有那么严格。
: 感觉是dp问题。每个分隔点可以完全分隔或者连接两边不同数目的字符加上两遍被隔
: 开的两块的结果。

avatar
v*m
14
笑了

【在 r*********e 的大作中提到】
: 最简单的倒立方法 j.jpg
avatar
n*w
15
recursive的意思是指dp可以写成递归形式吧。
更具体的说,是dp + recursive + backtrace。比ls的那个O(n^2)应该还要好一点。
做法是
1 先把valid的单词存成一个tries
2 从头往尾扫,找到所有valid的单词。比如applepie,假设a和apple都是valid。
3 a和apple都试一试。a的话,subproblem变成了split pplepie。apple的话,
subproblem变成了split pie。
用到了tries来剪枝,同时递归的写dp,面试的时候时间上充裕点。

【在 t*********7 的大作中提到】
: 也算是DP+RECUR
: 其实RECUR可解了,只是开销太大,要O(2^n)
: 如果加一个中间数据结构,动态记录的话,只要O(n^2)

avatar
z*n
16
应了一句骂人的话,裤子包的
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。