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

潍坊网站建设中公有网站建设的虚拟主机管理系统

潍坊网站建设中公,有网站建设的虚拟主机管理系统,建站软件免费模板,wordpress 网页计算器方法一#xff1a;字典树动态规划 首先,创建node类#xff0c;每个对象应该包含:一个node array nexts(如果有通往’a’的路#xff0c;那么对应的nexts[0]就不该为null); 一个boolean 变量#xff08;如果到达的这个字母恰好是字典中某个候选串的结尾#xff0c;那么 标记…方法一字典树动态规划 首先,创建node类每个对象应该包含:一个node array nexts(如果有通往’a’的路那么对应的nexts[0]就不该为null); 一个boolean 变量如果到达的这个字母恰好是字典中某个候选串的结尾那么 标记endtrue; 然后根据 字典建立字典树 接着使用动态规划的方式检查目标字符串str是否可以用字典中的候选串拼出来。具体地dp[i]表示 str[i…] 是否可以用字典中的候选串拼出来。对于str[i…]枚举第一子串该如何划分str[i…end]中end可取值i,i1,…。检查str[i…end]是否在字典中对应地余下str[end1,…]是否也可以 用字典中的候选串拼出来即dp[end1]true么? 二者都成立说明 str[i…]可以用字典中的候选串拼出来 即dp[i]true.对于str[i…]来说只要找到一种拼接方式即可于是break,去枚举下一个str[i-1,…]是否可以用字典中的候选串拼出来。 public boolean wordBreak(String word, ListString dict){// build a treeNode root new Node();for(String s:dict){Node cur root;int index0;char[] str s.toCharArray();for(char c:str){index c-a;if(cur.nexts[index]null){cur.nexts[index]new Node();}cur cur.nexts[index];}cur.endtrue;}// checkchar[] chs word.toCharArray();// dp[i]int n chs.length;boolean[] dp new boolean[n1];dp[n]true;// !!// if str[i..n-1] can be done, //then obviously dp[i] str[i...n-1]dp[n] true; // so dp[n] should be true;for(int in-1;i0;i--){Node cur root;for(int endi;endn;end){int index chs[end]-a;if(cur.nexts[index]null) {break;// 剪枝避免了无效的枚举}cur cur.nexts[index];if(cur.enddp[end1]){dp[i]true;break;}}}return dp[0];}方法2 递归函数哈希表 写一个递归函数 str[index…] 以字典为标本有多少种分解方式. 注在力扣上做测试它超过了时间限制。 public static boolean wordBreak(String s, ListString wordDict) {return process(s, 0, new HashSet(wordDict)) ! 0;}// s[0......index-1]这一段已经分解过了不用在操心// s[index.....] 这一段字符串能够被分解的方法数返回public static int process(String s, int index, HashSetString wordDict) {if (index s.length()) {// this cutting pattern is acceptedreturn 1;}// index没到最后// index...index// index...index1// index....index2// index....endint ways 0;for (int end index; end s.length(); end) {// s[index....end]String pre s.substring(index, end 1);if (wordDict.contains(pre)) {ways process(s, end 1, wordDict);}}return ways;}方法三动态规划哈希表 在方法一的基础上把字典树换成哈希表。 运行效率上显然不如用字典树的方法一。这主要是因为方法一中间遇到不在Trie上的字符就break进入下一个开头的尝试这可以视为一种“剪枝”避免不必要的操作。 而这里使用哈希表只要用substring函数切出来的都检查他是否在哈希表中所以费时。 public boolean wordBreak(String word,ListString dict){int n word.length();char[] str word.toCharArray();boolean[] dp new boolean[n1];dp[n]true;HashSetString set new HashSet(dict);for(int in-1;i0;i--){for(int ji;jn;j){if(set.contains(word.substring(i, j1))dp[j1]){dp[i] true;}}}return dp[0];}
http://www.dnsts.com.cn/news/239442.html

相关文章:

  • 宜昌网站建设厂家win2008安装wordpress
  • 网站建设课设心得推荐家居企业网站建设
  • 做网站需要服务器和什么seo网站关键词优化费用
  • 网站下载不了的视频怎么下载微信网页版官网下载安装
  • 用cdr做网站设计尺寸要多少广州注册公司需要什么资料
  • 做一个网站推广wordpress主题企业
  • 什么是网站建设外包网站建设 设计
  • 广州怎么做网站网页设计与网站建设的区别
  • 微网站设计方案表白二维码图片
  • 北京兼职做网站推广nike建设网站的目的
  • 德州宁津建设局网站长春网站建设专业公司
  • 做网站的优势有哪些建设执业注册中心网站
  • 网站备案管局审核智慧企业解决方案
  • 厦门网站建设中心优化游戏的软件
  • 权威的手机网站制作闵行北京网站建设
  • 营销型网站制作方法苏州首页关键词优化
  • 男女生做爰视频网站江西网站建设平台
  • 16年百度对泛解析网站的惩罚广东广州番禺区
  • wordpress暂停网站惠州seo按天付费
  • 深圳网站制作必选祥奔科技济南品牌网站建设公司
  • 成都有做公司网站的公司吗找人做app网站
  • 代做ppt的网站建设部网站退休注册人员
  • 建设网站思维导图那些免费网站可以做国外贸易
  • 奈曼旗建设局网站长沙手机网站建设哪些
  • 江苏SEO网站建设评价一个网站设计项目的好坏
  • 网络推广网站大全企业精髓八个字
  • 沈阳企业网站私密浏览器如何看片
  • 太阳能 技术支持 东莞网站建设wordpress首页循环
  • 品牌网站建设浩森宇特phpcms模板行业网站
  • 黑龙江网站备案蜂箱尺寸与制作图片