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

多元网站建设软文标题

多元网站建设,软文标题,四年级摘抄一小段新闻,搜索引擎案例分析结论文章目录电话号码的字母组合(17)代码解答单词搜索(79)代码解答电话号码的字母组合(17) 思路: 根据题意我们必须根据数字获取对应的字符数组,因此我们先定义1个字符数组表示这个电话表 private String[] letters {"","","abc","…

文章目录

  • 电话号码的字母组合(17)
    • 代码解答
  • 单词搜索(79)
    • 代码解答

电话号码的字母组合(17)

在这里插入图片描述
思路: 根据题意我们必须根据数字获取对应的字符数组,因此我们先定义1个字符数组表示这个电话表

private String[] letters = {"","","abc","def","ghi","jkl","mno","pqrs","tuv","wxyz"};

接着我们定义结果集,同时我们对特殊case进行判断

List<String> res = new ArrayList<>();
        if(digits == null || digits.length() == 0){return res;}

回溯部分的思路(helper):
我们需要传入一个可变的字符串StringBuilder,因为StringBuilder的性能比较高,还要我们输入的数字digits。
我们可以看到 当我们输入2位数,显示出来的字符串长度也就是2,因此将这这个条件作为退出递归的条件,当满足这个条件时就将可变字符串加入结果集,也就是我们要的答案。

    public void helper(StringBuilder curr,String digits){if(curr.length() == digits.length()){res.add(curr.toString());return;}

我们要获取我们输入的每一个数字,从而获取对应的字符数组,

        int num = digits.charAt(curr.length())-'0';String s1 = letters[num];

遍历我们获取的整个字符数组,将它们依次加入可变字符串curr中,重复以上操作。

        for(char c : s1.toCharArray()){curr.append(c);helper(curr,digits);curr.deleteCharAt(curr.length()-1);}

代码解答

class Solution {private String[] letters = {"","","abc","def","ghi","jkl","mno","pqrs","tuv","wxyz"};List<String> res = new ArrayList<>();public List<String> letterCombinations(String digits) {if(digits == null || digits.length() == 0){return res;}helper(new StringBuilder(),digits);return res;}public void helper(StringBuilder curr,String digits){if(curr.length() == digits.length()){res.add(curr.toString());return;}int num = digits.charAt(curr.length())-'0';String s1 = letters[num];for(char c : s1.toCharArray()){curr.append(c);helper(curr,digits);curr.deleteCharAt(curr.length()-1);}}
}

单词搜索(79)

在这里插入图片描述
这道题就是它给了我们一个二维数组,我们需要去根据我们输入的字符串去找在这个表格中接连出现的。如果有就返回true。
思路:
我需要先获取这个二位数组的长,宽,我们输入字符串的长度,并且我们将这个二维数组,变成布尔类型的字符数组,当检查到一个就将此位置置为true。我们定义方法search去搜索,传入的参数分别是i,j,(start)0为我们输入的字符串的字符数组的起始索引。
在这里插入图片描述

class Solution {//先定义长和宽int m;int n;int w;char[] letters;char[][] board;boolean[][] visted;public boolean exist(char[][] board, String word) {this.m = board.length;this.n = board[0].length;this.w = word.length();this.letters = word.toCharArray();this.board = board;this.visted = new boolean[m][n];for(int i = 0;i<m;i++){for(int j = 0;j<n;j++){//0是字符串数组的起始索引boolean res = search(i,j,0);if(res){return true;}}}return false;}

当我们的start到达了数组的最大长度,就表示我们整个字符串都已经遍历完成,这时就返回true。
当我们的i,j不在二维数组里面也就是说出边界了,或者某个字符不等于二维数组里面的字符。这时通通返回false。

        if(i<0 || j<0 || i>=m || j>=n || letters[start] != board[i][j]){return false;}

接着我们去遍历二维数组每四个方向

boolean res = search(i+1,j,start+1) || search(i,j+1,start+1) || search(i-1,j,start+1) ||search(i,j-1,start+1);

代码解答

class Solution {//先定义长和宽int m;int n;int w;char[] letters;char[][] board;boolean[][] visted;public boolean exist(char[][] board, String word) {this.m = board.length;this.n = board[0].length;this.w = word.length();this.letters = word.toCharArray();this.board = board;this.visted = new boolean[m][n];for(int i = 0;i<m;i++){for(int j = 0;j<n;j++){//0是字符串数组的起始索引boolean res = search(i,j,0);if(res){return true;}}}return false;}public boolean search(int i,int j,int start){if(start >= w){return true;}if(i<0 || j<0 || i>=m || j>=n || letters[start] != board[i][j]){return false;}board[i][j] += 52;boolean res = search(i+1,j,start+1) || search(i,j+1,start+1) || search(i-1,j,start+1) ||search(i,j-1,start+1);board[i][j] -= 52;return res;}
}
http://www.ds6.com.cn/news/43871.html

相关文章:

  • 网站建设空间一般多大百度云电脑网页版入口
  • ps软件下载官网网络优化工程师是做什么的
  • 删除网站备案搭建网站平台需要多少钱
  • 创建iis网站郑州网站设计有哪些
  • 怎样做网站权重最近10个新闻
  • 江门市做网站昆明seocn整站优化
  • 长宁网站建设公司网站推广和网站优化
  • 企业vi设计图片网站优化公司怎么选
  • 比较好的网站建设品牌设计百度seo公司报价
  • 做网站要建立站点吗品牌seo是什么意思
  • 免费的网站服务器游戏代理平台
  • 用vs2012做网站案例网站查询域名ip
  • 网页设计与网站建设第05会计培训班一般多少钱
  • 做网站经营流量一站传媒seo优化
  • wordpress 侧边收起seo分析案例
  • 河南网站制作公司哪家好网络推广营销方案免费
  • 手机网站怎么做SEO优化seo实战培训课程
  • 门户网站属于什么类型的模式谷歌搜索入口 镜像
  • 网站维护内容及费用app开发公司推荐
  • 昆明做企业网站多少钱资源搜索
  • h5制作报价细则志鸿优化网下载
  • asp.net动态网站成品西安seo服务外包
  • 怎么写网站规划方案怎么提高百度搜索排名
  • 传奇端游平台青岛网站建设优化
  • 网站建设是否属于技术合同北京百度推广客服电话多少
  • 网站建设维护合同范本百度推广登录后台
  • 长春哪里做网站今日国际新闻摘抄十条
  • 什么做直播网站浏览器下载安装2023版本
  • 免费咨询医生的软件有什么域名年龄对seo的影响
  • wordpress插件访客能用吗专业seo外包