当前位置: 首页 > news >正文

网站制作过程教程免费企业网站cms系统

网站制作过程教程,免费企业网站cms系统,如何建议一个网站,网站分析 工具题目链接 leetcode在线oj题——单词接龙 题目描述 字典 wordList 中从单词 beginWord 和 endWord 的 转换序列 是一个按下述规格形成的序列 beginWord -> s1 -> s2 -> … -> sk&#xff1a; 每一对相邻的单词只差一个字母。 对于 1 < i < k 时&#xff…

题目链接

leetcode在线oj题——单词接龙

题目描述

字典 wordList 中从单词 beginWord 和 endWord 的 转换序列 是一个按下述规格形成的序列 beginWord -> s1 -> s2 -> … -> sk:

每一对相邻的单词只差一个字母。
对于 1 <= i <= k 时,每个 si 都在 wordList 中。注意, beginWord 不需要在 wordList 中。
sk == endWord
给你两个单词 beginWord 和 endWord 和一个字典 wordList ,返回 从 beginWord 到 endWord 的 最短转换序列 中的 单词数目 。如果不存在这样的转换序列,返回 0 。

题目示例

示例1:
输入:beginWord = “hit”, endWord = “cog”, wordList = [“hot”,“dot”,“dog”,“lot”,“log”,“cog”]
输出:5
解释:一个最短转换序列是 “hit” -> “hot” -> “dot” -> “dog” -> “cog”, 返回它的长度 5。

示例2:
输入:beginWord = “hit”, endWord = “cog”, wordList = [“hot”,“dot”,“dog”,“lot”,“log”]
输出:0
解释:endWord “cog” 不在字典中,所以无法进行转换。

题目提示

  • 1 <= beginWord.length <= 10
  • endWord.length == beginWord.length
  • 1 <= wordList.length <= 5000
  • wordList[i].length == beginWord.length
  • beginWord、endWord 和 wordList[i] 由小写英文字母组成
  • beginWord != endWord
  • wordList 中的所有字符串 互不相同

解题思路

使用广度优先搜索
将字符串的所有字符都替换成其他的25个字符,查看wordList中是否有该单词,如果有就将该单词加入到队列中,最后再弹出该元素

例如:先将beginword加入到队列中
在这里插入图片描述
对hit的每一位的字符都进行遍历,将其变成其他的25个字母,例如先是hit的’h’,变成ait,发现ait并不在wordList中,继续变成bit…
第一个字符变换了25个字符都没有wordList中的字符串与之匹配

继续变换第二个字符‘i’,先是变成hat,然后是hbt…

一直将所有字符都替换查看是否匹配,如果匹配就将其放到队列里

最后只有将第二个字符变成o才有hot与之匹配,这时将hot放入队列,step++,将队列中的hit取出

在这里插入图片描述
然后继续将队列中的所有元素都拿出来,分别变换字符查看是否有匹配的,如果有并且没有遍历过,就放入队列中
在这里插入图片描述
继续重复上面的操作
在这里插入图片描述
继续重复

最终找到单词cog,返回step = 5

代码

class Solution {public int ladderLength(String beginWord, String endWord, List<String> wordList) {int step = 1;Queue<String> queue = new LinkedList<>();HashSet<String> isUsed = new HashSet<>();HashSet<String> dict = new HashSet<>();//添加第一个单词queue.offer(beginWord);isUsed.add(beginWord);//将链表转换为哈希表for (int i = 0; i < wordList.size(); i++) {dict.add(wordList.get(i));}while(!queue.isEmpty()){int size = queue.size();while(size != 0){String curString = queue.poll();if(curString.equals(endWord)){return step;}//修改单词中的一个字符for (int i = 0; i < curString.length(); i++) {StringBuffer tmp = new StringBuffer(curString);for (char ch = 'a'; ch <= 'z'; ch++) {tmp.setCharAt(i,ch);String newString = tmp.toString();//判断新的单词是否在词典中,并且没有搜索过if(!isUsed.contains(newString) && dict.contains(newString)){queue.offer(newString);isUsed.add(newString);}}}size--;}step++;}return 0;}
}
http://www.yayakq.cn/news/738301/

相关文章:

  • 长沙优化网站技巧厦门网站建设代理
  • 网站开发使用什么运行软件阿里巴巴运营岗位职责
  • 网站建设教程搭建浊贝湖南岚鸿给力wordpress安装路径
  • 合肥网站备案小广告的胶怎么清理
  • 合肥网站制作公司排名地方网站做外卖
  • 企业管理咨询网站seo咨询顾问
  • 工业设计效果图企业网站建设中图片优化的方法
  • 门户网站建设工作汇报邵阳营销型网站建设
  • 集团网站建设制作费用梁园区官方网站
  • 常德营销型网站建设医院网站建设政策
  • 自媒体横行还有做网站seo优化网站词
  • php网站访问很慢不用实名的云服务器
  • 常德建设公司网站科学松鼠会 wordpress主题
  • 如何建设购物网站网络推广一般怎么收费
  • 建设商城网站报价wordpress 图书馆
  • 微信网站图片链接怎么做亚马逊雨林现状
  • 网站建设的盈利模式电脑网页
  • 网站开发游戏程序开发计量检测网站平台建设方案
  • 赣榆区住房和城乡建设局网站张家港市住房城乡建设局网站
  • 加强酒店网站建设的建议手机上自己如何做网站
  • 江苏备案网站名称tp5企业网站开发百度云
  • 五金弹簧东莞网站建设平台网站兼职做sap
  • 专业网站建设套餐wordpress 自媒体 主题
  • 模板建站和仿站上海企业vi设计
  • 镇江网站制作优化因网站建设关闭的公告
  • 织梦网站模版怎么用网站开发的布局划分
  • 网站模拟效果开一个公司需要具备什么条件
  • 免费php网站制标易logo设计
  • 上海公共招聘网下载seo文章是什么
  • 江门市住房和城乡建设局门户网站wordpress定位插件