【LeetCode】Word Break 動態規劃

HIT_微笑前進發表於2015-03-28

題目:Word Break

思路:將一個串可以劃分的共有s.length+1個點,判斷長為n的串是否能由字典中的片語成,則看之前有沒有劃分點能使其處於字典中 ,這樣該問題 就分解為子問題的求解

所以可以使用動態規劃

<span style="font-size:18px;">public class Solution {
    public boolean wordBreak(String s, Set<String> dict) {
        boolean[] tag = new boolean[s.length()+1]; 
        tag[0] = true;
        for(int i = 1;i <= s.length();i++){
        	for(int j = 0;j < i;j++){
        		if(tag[j] && dict.contains(s.substring(j,i))){ 
        			tag[i] = true;
        			break;
        		}
        	}
        }
        return tag[s.length()];
    }
}</span>


相關文章