[LeetCode] Word Ladder
来源:互联网 发布:手机分析软件 编辑:程序博客网 时间:2024/05/17 01:51
Given two words (start and end), and a dictionary, find the length of shortest transformation sequence from start to end, such that:
- Only one letter can be changed at a time
- Each intermediate word must exist in the dictionary
For example,
Given:
start = "hit"
end = "cog"
dict = ["hot","dot","dog","lot","log"]
As one shortest transformation is "hit" -> "hot" -> "dot" -> "dog" -> "cog"
,
return its length 5
.
Note:
- Return 0 if there is no such transformation sequence.
- All words have the same length.
- All words contain only lowercase alphabetic characters.
class Solution {public: int ladderLength(string start, string end, unordered_set<string> &dict) { if(start.size() != end.size() || start.empty() || end.empty()) return 0; queue<string> path; path.push(start); int level = 1, count = 1; dict.erase(start); while(!dict.empty() && !path.empty()) { string curword = path.front(); path.pop(); count--; for(int i = 0; i < curword.size(); i++) { string tmp = curword; for(char c = 'a'; c <= 'z'; c++) { if(tmp[i] == c) continue; tmp[i] = c; if(tmp == end) return level+1; if(dict.find(tmp) != dict.end()) { path.push(tmp); dict.erase(tmp); } } } if(count == 0) { count = path.size(); level++; } } return 0; }};
参考:http://blog.csdn.net/doc_sgl/article/details/13290909
0 0
- [Leetcode][python]Word Ladder/Word Ladder II
- [Leetcode] Word Ladder
- LeetCode: Word Ladder
- leetcode 84: Word Ladder
- [leetcode] word ladder
- 【leetcode】Word Ladder
- 【leetcode】Word Ladder II
- LeetCode - Word Ladder
- LeetCode之Word Ladder
- [LeetCode]Word Ladder
- [LeetCode]Word Ladder II
- [Leetcode]Word Ladder
- [leetcode]Word Ladder
- [leetcode] Word Ladder
- [leetcode] Word Ladder II
- LeetCode-Word Ladder
- LeetCode- Word Ladder
- LeetCode - Word Ladder II
- boost库 bind/function的使用
- POJ2299 求逆序对
- Maven Jetty Plugin 配置指南(翻译)
- [转] 静态分割窗口与多视图实例
- UI控件 - UIImageView
- [LeetCode] Word Ladder
- MySQL的用户与权限管理
- 我也来写博客
- win7下用U盘装ubuntu14.04双系统
- linux中为什么要有分段和分页机制
- Scala模式(1)
- Codeforces 114A-Cifera(暴力)
- hdu1013(大数水题)
- Hibernate4实战 之 第一部分 Hibernate入门