博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
127.Word Ladder
阅读量:4650 次
发布时间:2019-06-09

本文共 1360 字,大约阅读时间需要 4 分钟。

class Solution {public:    int ladderLength(string start, string end, unordered_set
&dict) { // IMPORTANT: Please reset any member data you declared, as // the same Solution instance will be reused for each test case. //BFS遍历找到的第一个匹配就是最短转换,空字符串是层与层之间的分隔标志 queue
Q; Q.push(start); Q.push(""); int res = 1; while(Q.empty() == false) { string str = Q.front(); Q.pop(); if(str != "") { int strLen = str.length(); for(int i = 0; i < strLen; i++) { char tmp = str[i]; for(char c = 'a'; c <= 'z'; c++) { if(c == tmp)continue; str[i] = c; if(str == end)return res+1; if(dict.find(str) != dict.end()) { Q.push(str); dict.erase(str); } } str[i] = tmp; } } else if(Q.empty() == false) {//到达当前层的结尾,并且不是最后一层的结尾 res++; Q.push(""); } } return 0; }};

转载于:https://www.cnblogs.com/smallredness/p/10677258.html

你可能感兴趣的文章
385. Mini Parser
查看>>
React-组件的生命周期
查看>>
Git详解之四:服务器上的Git
查看>>
JavaScript 复杂判断的更优雅写法借鉴
查看>>
<mvc:annotation-driven/>浅析
查看>>
ArcEngine开发之自定义工具
查看>>
SQL视频总结
查看>>
P4878 道路修建-美国
查看>>
dp练习
查看>>
vim
查看>>
maze_travel的隐私声明
查看>>
对正则表达式又重新学了一遍,笔记方便以后查阅
查看>>
UIKit应用 - Swift 版本: 3.让UITableViewCell的背景色渐变
查看>>
Java反射
查看>>
building tool
查看>>
JS中for循环输出三角形
查看>>
字节对齐2
查看>>
与Win8之磁盘活动时间100%斗争心得
查看>>
Matrix: android 中的Matrix (android.graphics.Matrix) (转)
查看>>
Android中处理崩溃异常
查看>>