day73(2.1)——leetcode面试经典150

127. 单词接龙

127. 单词接龙

这个跟昨天的题还是有点不一样的,这个如果按照昨天的方法,会超时,因为时间已经到了50000

题目:

题解:

java 复制代码
class Solution {
    public int ladderLength(String beginWord, String endWord, List<String> wordList) {
        //创建队列
        Queue<String> queue = new LinkedList<>();
        //将起始单词放入队列
        queue.offer(beginWord);
        //用map来进行确认是否是有效访问位
        //如果该单词在map中,证明已经访问过
        Map<String, Integer> visted = new HashMap<>();
        visted.put(beginWord, 1);
        //转换步数
        int step = 0;
        //用来确认是否在字典中
        Set<String> wordSet = new HashSet<>(wordList);
        while(queue.size()>0) {
            int size = queue.size();
            step++;
            for(int i=0;i<size;i++) {
                //取出队列的单词
                String t = queue.poll();
                //看是否是endWord
                if(t.equals(endWord)) {
                    return step;
                }

                for(int j=0;j<t.length();j++) {
                    StringBuilder s = new StringBuilder(t);
                    for(char c='a';c<='z';c++) {
                        if(s.charAt(j)==c) {
                            continue;
                        }
                        s.setCharAt(j,c);
                        //如果字典中存在该单词,且该单词没有被访问过
                        if(wordSet.contains(s.toString())&&!visted.containsKey(s.toString())) {
                            //加入队列中
                            queue.offer(s.toString());
                            //将t设置成有效访问位
                            visted.put(s.toString(), 1);
                        }
                    }
                }
            }
        } 
        return 0;
    }
}
相关推荐
一只鹿鹿鹿15 小时前
信息安全等级保护安全建设防护解决方案(总体资料)
运维·开发语言·数据库·面试·职场和发展
Eward-an16 小时前
【算法竞赛/大厂面试】盛最多水容器的最大面积解析
python·算法·leetcode·面试·职场和发展
Trouvaille ~16 小时前
【递归、搜索与回溯】专题(七):FloodFill 算法——勇往直前的洪水灌溉
c++·算法·leetcode·青少年编程·面试·蓝桥杯·递归搜索回溯
BUG?不,是彩蛋!18 小时前
Token 相关的高频面试题
面试·职场和发展·token
Zhansiqi19 小时前
day36花卉面试题目
面试·职场和发展
Moment19 小时前
尤雨溪宣布 Vite+ 正式开源,前端工具链要大一统了
前端·javascript·面试
sunny_19 小时前
📖 2026年 大厂前端面试手写题库已开源(2.3k star)
前端·面试·github
眼眸流转20 小时前
LeetCode热题100(四)
算法·leetcode·职场和发展
深蓝轨迹21 小时前
乐观锁 vs 悲观锁 含面试模板
java·spring boot·笔记·后端·学习·mysql·面试
啊哦呃咦唔鱼21 小时前
LeetCode hot100-3 无重复字符的最长子串
算法·leetcode·职场和发展