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

重庆招投标综合信息网自学seo大概需要多久

重庆招投标综合信息网,自学seo大概需要多久,php网站哪些,政府网站建设回顾https://leetcode.cn/problems/word-search-ii/description/?envTypestudy-plan-v2&envIdtop-interview-150思路: 1. 我们可以先将这个单词网格转化成一颗字典树,然后再拿words进行搜索。 2. 我们可以先将words装换成字典树,然后在在boa…
https://leetcode.cn/problems/word-search-ii/description/?envType=study-plan-v2&envId=top-interview-150

思路:
1. 我们可以先将这个单词网格转化成一颗字典树,然后再拿words进行搜索。
2. 我们可以先将words装换成字典树,然后在在board中选点看能不能走出一条满足的路径来
对于这两个思路其实差不多,但是1的话如果board太大就很容易超时,而且无用的构建会很多(比如有一个5*5的board,理论一条路径长度应该是25,但是如果words中长的单词都只有5的话我们就根本用不到这么长)。
所以权衡来看第二种思路会更好

思路一(确实会超时):

class Trie {Trie[] children;boolean isEnd;public Trie() {children = new Trie[26];isEnd = true; // 每个被构造出的节点都是一个单词的结尾}}public List<String> findWords(char[][] board, String[] words) {boolean[][] signed = new boolean[board.length][board[0].length];Trie root = new Trie();for(int i = 0; i < board.length; i++) {for(int j = 0; j < board[0].length; j++) {signed[i][j] = true;if(root.children[board[i][j] - 'a'] == null) {root.children[board[i][j] - 'a'] = new Trie();}transfer(board, signed, root.children[board[i][j] - 'a'], i, j);signed[i][j] = false;}}List<String> ans = new ArrayList<>();for(String word : words) {if(search(root, word)) {ans.add(word);}}return ans;}public void transfer(char[][] board, boolean[][] signed, Trie root, int x, int y) {for(int i = 0; i < 4; i++) {int xx = x + dx[i];int yy = y + dy[i];if(xx >= 0 && xx < board.length && yy >= 0 && yy < board[0].length && !signed[xx][yy]) {signed[xx][yy] = true;if(root.children[board[xx][yy] - 'a'] == null) root.children[board[xx][yy] - 'a'] = new Trie();transfer(board, signed, root.children[board[xx][yy] - 'a'], xx, yy);signed[xx][yy] = false;}}}

 思路二:

    class Trie {Trie[] children;String word; // 如果当前节点是不是一个单词的结尾,那么word=这个单词,否则word=""public Trie() {children = new Trie[26];word = "";}}public List<String> findWords(char[][] board, String[] words) {// 将words构建成字典树Trie root = new Trie();for(String word : words) {add(root, word);}boolean[][] signed = new boolean[board.length][board[0].length];HashSet<String> ans = new HashSet<>();// 在board中选取点在Tire中走看是否存在路径for(int i = 0; i < board.length; i++) {for(int j = 0; j < board[0].length; j++) {signed[i][j] = true;dfs(root, board, signed, ans, i, j);signed[i][j] = false;}}return new ArrayList<>(ans);}public void add(Trie root, String word) {for(int i = 0; i < word.length(); i++) {if(root.children[word.charAt(i) - 'a'] == null) {root.children[word.charAt(i) - 'a'] = new Trie();}root = root.children[word.charAt(i) - 'a'];}root.word = word;}/*** 深度优先搜索* @param root 当前节点* @param board 单词网格* @param signed 标记数组* @param ans 答案* @param x 当前位置x坐标* @param y 当前位置y坐标*/public void dfs(Trie root, char[][] board, boolean[][] signed, HashSet<String> ans, int x, int y) {if(root == null) return;if(!Objects.equals(root.word, "")) {ans.add(root.word);}root = root.children[board[x][y] - 'a'];for(int i = 0; i < 4; i++) {int xx = x + dx[i];int yy = y + dy[i];if(xx >= 0 && xx < board.length && yy >= 0 && yy < board[0].length && !signed[xx][yy]) {char ch = board[xx][yy];signed[xx][yy] = true;dfs(root, board, signed, ans, xx, yy);signed[xx][yy] = false;}}if (root != null && root.word != "") ans.add(root.word);}public boolean search(Trie root, String word) {for(int i = 0; i < word.length(); i++) {if(root.children[word.charAt(i) - 'a'] == null) {return false;}root = root.children[word.charAt(i) - 'a'];}return "".equals(root.word);}

http://www.dtcms.com/wzjs/445490.html

相关文章:

  • 自适应网站制作整合营销沟通
  • 网站开发培训班淘宝seo
  • 文本编辑器做网站做外贸怎么推广
  • 建设营销型网站的要素怎么在百度免费推广
  • 手机网站建设机构品牌营销策划培训课程
  • python做网站教程惠州seo代理计费
  • 查询类网站开发百家号权重查询站长工具
  • 网上跨境电商是真的吗免费关键词排名优化软件
  • 北京哪家网站建设公司好怎么申请一个网站
  • 文章响应式网站大连seo按天付费
  • 做网站销售怎么开发客户网站怎么优化seo
  • 企业为什么要分析环境成都网站排名优化公司
  • qq群推广用什么网站好北京seo供应商
  • 如何用公众号做网站游戏优化
  • 下沙经济开发区建设局网站域名解析网站
  • 做彩票网站电话多少钱搜索引擎优化方案
  • 亚马逊服务器做影视网站百度做广告怎么收费
  • 湘潭商城网站建设定制百度极简网址
  • 做明星网站打广告seo sem是指什么意思
  • 乌兰察布市建设工程造价网站洛阳seo博客
  • 湖南建网站百度怎么优化网站排名
  • 网站架构包括哪些网站系统
  • 网站建设税种分类写软文的app
  • 怎么在年报网站做简易注销外链网站推荐
  • 建设网站b2c哪家好他达拉非
  • 一学一做腾讯视频网站吗关键词挖掘工具
  • 本地的佛山网站建设百度关键词优化软件怎么样
  • 阿里国际网站首页可以做全屏不搜索引擎官网
  • 高端商城网站建设精准客源
  • 贵州省文化旅游网站建设的必要性长沙网站推广排名优化