首页 > 代码库 > LeetCode-Word Break

LeetCode-Word Break

Given a string s and a dictionary of words dict, determine if s can be segmented into a space-separated sequence of one or more dictionary words.

For example, given
s = "leetcode",
dict = ["leet", "code"].

Return true because "leetcode" can be segmented as "leet code".

Have you met this question in a real interview?
Solution:
 1 public class Solution { 2     public boolean wordBreak(String s, Set<String> dict) { 3         boolean[] break = new boolean[s.length()+1]; 4         break[0] = true; 5  6         for (int i=1;i<=s.length();i++){ 7             StringBuilder builder = new StringBuilder; 8             for (int j=i-1;j>=0;j++){ 9                 builder.insert(0,s.charAt(j));10                 String word = builder.toString();11                 if (dict.contains(word) && break[j]) {12                     break[i] = true;13                     break;14                 }15             }16         }17 18         return break[s.length()];19     }20 }

 

LeetCode-Word Break