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

凡科做网站行吗室内设计公司职位

凡科做网站行吗,室内设计公司职位,wordpress 链接按钮,vue做门户网站126. 单词接龙 II 需要注意的是#xff0c;由于要找最短路径#xff0c;连接 dot 与 lot 之间的边就不可以被记录下来#xff0c;同理连接 dog 与 log 之间的边也不可以被记录。这是因为经过它们的边一定不会是最短路径。因此在广度优先遍历的时候#xff0c;需要记录的图…126. 单词接龙 II 需要注意的是由于要找最短路径连接 dot 与 lot 之间的边就不可以被记录下来同理连接 dog 与 log 之间的边也不可以被记录。这是因为经过它们的边一定不会是最短路径。因此在广度优先遍历的时候需要记录的图的关系如下图所示。 在广度优先遍历的时候我们需要记录从当前的单词 currWord 只变化了一个字符以后且又在单词字典中的单词 nextWord 之间的单向关系虽然实际上无向图但是广度优先遍历是有方向的我们解决这个问题可以只看成有向图记为 from它是一个映射关系键是单词值是广度优先遍历的时候从哪些单词可以遍历到「键」所表示的单词使用哈希表来保存。 Java代码牛逼格拉斯 class Solution {public ListListString findLadders(String beginWord, String endWord, ListString wordList) {ListListString res new ArrayList();SetString dict new HashSet(wordList);if (!dict.contains(endWord)) {return res;}MapString, Integer steps new HashMap(); MapString, SetString from new HashMap(); // 无向图记录层数boolean found bfs(beginWord, endWord, dict, steps, from); // 构建无向图if (found) {DequeString path new ArrayDeque(); // 从尾往前addpath.add(endWord);dfs(from, path, beginWord, endWord, res); // 开始回溯}return res;}private void dfs(MapString, SetString from, DequeString path, String beginWord, String cur, ListListString res) {if (cur.equals(beginWord)) {res.add(new ArrayList(path));return;}for (String precursor : from.get(cur)) { // 回溯path.addFirst(precursor);dfs(from, path, beginWord, precursor, res); // from有向图path.removeFirst();}}private boolean bfs(String beginWord, String endWord, SetString dict, MapString, Integer steps, MapString, SetString from) {int wordLen beginWord.length();int step 0;steps.put(beginWord, step); boolean found false;dict.remove(beginWord);QueueString queue new LinkedList();queue.offer(beginWord); // 用于BFS层搜索while (!queue.isEmpty()) {step;int size queue.size();for (int i 0; i size; i) { // 遍历队列这一层的String currWord queue.poll();char[] charArray currWord.toCharArray();for (int j 0; j wordLen; j) { // 单词数组char origin charArray[j];for (char c a; c z; c) { // 对单词的每一个位进行更替charArray[j] c;String nextWord String.valueOf(charArray);if (steps.containsKey(nextWord) steps.get(nextWord) step) { // 归一的时候出现即dog log到cog的时候from.get(nextWord).add(currWord); // from: 广度优先遍历的时候从哪些单词可以遍历到「键」所表示的单词} // 遍历第i层的时候step i 1; if (!dict.contains(nextWord)) { // 在当前层遍历的时候已去除自身下一层入队列并去除在dict的记录continue;}// System.out.println(nextWord);dict.remove(nextWord);queue.offer(nextWord); // 进入到此处的都是下一层的下一层入队列并记录层数。当前层的已经被过滤掉了steps.put(nextWord, step); // 记录nextWord的层数from.putIfAbsent(nextWord, new HashSet()); // from是映射图from.get(nextWord).add(currWord); // currWord映射到nextWord有向图if (nextWord.equals(endWord)) { // 不能在这里进行break要继续填充endWord的setfound true;}}charArray[j] origin;}}if (found) { // 每一层结束后判断找到最短路径退出whilebreak;}}return found;} }
http://www.dnsts.com.cn/news/138808.html

相关文章:

  • 你认为优酷该网站哪些地方可以做的更好_为什么?wordpress禁止谷歌字体
  • 深圳房产 网站建设个人简历电子版填写免费模板
  • 招远做网站价格电子商务网站建设系统特点
  • ps制作网站产品图片太原网站建设 thinkphp3.2
  • 南宁南宁做网站管理案例网站
  • 求个网站你们知道的wordpress分享和点赞
  • 包装设计的目的和意义长沙网站优化推广
  • 网站制作-杭州重庆人才网
  • 徐州网站排名优化网络推广外包业务销售
  • 网站上传办法wordpress 七牛云图床
  • 免费拿项目做的网站灵犀科技 高端网站建设背景图
  • 高端建站准备材料请人做网站收费多少钱
  • 优秀电子商务网站企业网站如何做推广
  • 简洁大气企业网站源码万网网站模板购买
  • 做网站的费用计入销售费用吗深圳网站建设服务哪一个便宜
  • 网站关键词热度深圳好的网站制作哪家快
  • 网站栏目建设征求意见电商网站的二级怎么做
  • 网站建设基础包括成都广告公司招聘
  • 网站免费关键词如何做交换友情链接的要求有
  • 专业微信网站建设多少钱云服务器网站搭建
  • 百度网站惩罚期网站建设技术 论坛
  • 营销型网站建设+课程网页模版比较出名的网站
  • 网站域名收费标准如何查询注册过的网站
  • 杭州微网站开发公司电话网站建设公司哪里有
  • 青岛做网站eoe给企业做网站的公司有哪些
  • 做网站需要花费那方面的钱用vs2012做简单网站
  • 宠物网站建设目标wordpress创建专题
  • 图书馆网站建设的建议上海的设计网站有哪些内容
  • 北京建网站公司飞沐地方网站还有得做吗
  • 做相册本哪个网站好用吗百度指数是什么