word-break
来源:互联网 发布:国外p2p下载软件 编辑:程序博客网 时间:2024/06/15 18:57
For example, given
s ="leetcode",
dict =["leet", "code"].
Return true because"leetcode"can be segmented as"leet code".
public class WordBreak
{
//切割字符串
public static boolean wordBreak1(String s, Set<String> dict)
{
int _len = s.length();
for(int i = 0; i < _len; ++i)
{
if(i == 0)
{
if(dict.contains(s.substring(0, _len)))
return true;
}
else
{
if (dict.contains(s.substring(0, i)) && dict.contains(s.substring(i, _len)))
return true;
}
}
return false;
}
//动态规划
//状态转移方程 f(n) = f(m) && c(m + 1, n)
//f(n)表示前n个字符是否可分,c(m + 1, n)表示字典中是否包含第m+1到第n个字符的字符串
public static boolean wordBreak2(String s, Set<String> dict)
{
int _len = s.length();
boolean[] _arrays = new boolean[_len + 1];
_arrays[0] = true;
for(int i = 1; i <= _len; ++i)//i对应方程中的n
{
for(int j = 0; j < i; ++j)//j对应方程中的m
{
if(_arrays[j] && dict.contains(s.substring(j, i)))
{
_arrays[i] = true;
}
}
}
return _arrays[_len];
}
}
- Word-break:break-word
- Word Break && Word Break ||
- word-break
- Word Break
- Word Break
- Word Break
- word break
- Word Break
- Word Break
- Word Break
- Word Break
- Word Break
- Word Break
- Word Break
- Word Break
- Word Break
- Word Break
- Word Break
- Java数据结构05----栈:顺序栈和链式堆栈
- windows下配置mygsl数值计算c程序库的方法
- RabbitMQ消息队列(三):任务分发机制
- 多校7 HDU
- 数组元素的最大差值
- word-break
- 51Nod-1030-大数进制转换
- 面试题11:数值的整数次方
- RabbitMQ消息队列(四):分发到多Consumer(Publish/Subscribe)
- ORA-32004 解决办法
- php 用源码安装
- Qt for Android 的环境配置
- 线段树——BZOJ1858/Luogu2572 [SCOI2010]序列操作
- Java中Set集合 Iterator迭代遍历数组