Word Ladder leetcode
来源:互联网 发布:购买域名后如何使用 编辑:程序博客网 时间:2024/05/21 10:53
题目链接:http://oj.leetcode.com/problems/word-ladder/
Word Ladder
Total Accepted: 9795 Total Submissions: 55989My SubmissionsGiven 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.
1.要有个变量来记录层数,以便于最后的输出。
2.由于‘a’到'z'就26个字母而已,而且每次只变一个,状态较少,而且那么多单词中只有少数符合要求,所以对原始单词进行修改,然后查看是否在dict中,即可。
code:
class Solution {public: int ladderLength(string start, string end, unordered_set<string> &dict) { if(start.size()==0||(start.size()!=end.size())) return 0; if(start==end) return 1; queue<pair<string,int> > q; q.push(make_pair(start,1)); dict.erase(start); while(!q.empty()) { string tmp=q.front().first; int lev=q.front().second; q.pop(); for(int i=0;i<tmp.size();i++) { char t=tmp[i]; for(int j=0;j<26;j++) { if(t=='a'+j) continue; tmp[i]='a'+j; if(tmp==end) { return lev+1; } if(dict.count(tmp)>0) { q.push(make_pair(tmp,lev+1)); dict.erase(tmp); } } tmp[i]=t; } } return 0; }};
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
- hbase配置优化
- error: a label can only be part of a statement and a declaration is not a statement
- 大数相乘
- JSON的定义:
- ORACLE RMAN备份及还原
- Word Ladder leetcode
- hadoop大集群实施--比较实用的思路(设备选型、是否使用虚拟机、快速部署安装、自动复制节点等)
- GridView + Gallery 一起使用的demo
- 从最大似然到EM算法浅解
- 协方差特征 image feature 二阶pooling + ECCV12
- BlueTooth: 蓝牙的电源模式
- Android dispatchTouchEvent介绍
- hbase空洞修复
- 开始自己的编程之路