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

昆明网站建设公司_小程序开发难吗

昆明网站建设公司_,小程序开发难吗,推荐6个免费国外自媒体平台,豆各庄网站建设1410. HTML 实体解析器 1410. HTML 实体解析器 代码仓库地址#xff1a; https://github.com/slience-me/Leetcode 个人博客 #xff1a;https://slienceme.xyz 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀#xff0c;返回空字符串 …1410. HTML 实体解析器 1410. HTML 实体解析器 代码仓库地址 https://github.com/slience-me/Leetcode 个人博客 https://slienceme.xyz 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀返回空字符串 。 「HTML 实体解析器」 是一种特殊的解析器它将 HTML 代码作为输入并用字符本身替换掉所有这些特殊的字符实体。 HTML 里这些特殊字符和它们对应的字符实体包括 双引号 字符实体为 对应的字符是 。单引号 字符实体为 对应的字符是 。与符号 字符实体为 对应对的字符是 。大于号 字符实体为 对应的字符是 。小于号 字符实体为 对应的字符是 。斜线号 字符实体为 ⁄ 对应的字符是 / 。 给你输入字符串 text 请你实现一个 HTML 实体解析器返回解析器解析后的结果。 示例 1 输入text amp; is an HTML entity but ambassador; is not. 输出 is an HTML entity but ambassador; is not. 解释解析器把字符实体 amp; 用 替换示例 2 输入text and I quote: quot;...quot; 输出and I quote: \...\示例 3 输入text Stay home! Practice on Leetcode :) 输出Stay home! Practice on Leetcode :)示例 4 输入text x gt; y amp;amp; x lt; y is always false 输出x y x y is always false示例 5 输入text leetcode.comfrasl;problemsetfrasl;all 输出leetcode.com/problemset/all提示 1 text.length 10^5字符串可能包含 256 个ASCII 字符中的任意字符。 方案1暴力解 第一种纯暴力解遍历替换 class Solution { public:string entityParser(string text) {unordered_mapstring, string myMap {{quot;, \},{apos;, \},{amp;, },{gt;, },{lt;, },{frasl;, /}};for (const auto map: myMap){string searchString map.first;string replacementString map.second;size_t pos text.find(searchString); // 找到第一个匹配的位置// 循环替换所有匹配的内容while (pos ! string::npos) {text.replace(pos, searchString.length(), replacementString); // 用替换字符串替换匹配字符串pos text.find(searchString, pos replacementString.length()); // 继续找下一个匹配的位置}}return text;} };执行用时分布 744ms 击败11.76%使用 C 的用户 消耗内存分布16.37MB 击败90.20%使用 C 的用户 方案2 发现没有优化太多反而超时了 class Solution { public:string entityParser(string text) {unordered_mapstring, string myMap {{quot;, \},{apos;, \},{amp;, },{gt;, },{lt;, },{frasl;, /}};for (int i 0; i text.length(); i){string temp;if (text[i]){if (text[i1]\0 || text[i1]){continue;}int indexj i1;while (text[indexj]!;){if (indexjtext.length()){break;}temp text[indexj];indexj1;}if (indexjtext.length()){break;}temp ;;size_t index replaceStr(text, myMap, temp);if (index ! -1){i index;}} else if(text[i]\0){continue;}}return text;}size_t replaceStr(string text, unordered_mapstring, string myMap, const string temp) const {if(myMap.find(temp) ! myMap.end()){string searchString myMap.find(temp)-first;string replacementString myMap.find(temp)-second;size_t pos text.find(searchString); // 找到第一个匹配的位置// 循环替换所有匹配的内容text.replace(pos, searchString.length(), replacementString); // 用替换字符串替换匹配字符串return posreplacementString.length()-1;}return -1;} };超出时间限制 测试用例通过了但耗时太长。 方案3 最后的优化 class Solution { public:string entityParser(string text) {string result ;int i 0;int n text.length();while (i n) {if (text[i] ) {if (text.substr(i, 6) quot;) {result \;i 6;} else if (text.substr(i, 6) apos;) {result ;i 6;} else if (text.substr(i, 5) amp;) {result ;i 5;} else if (text.substr(i, 4) gt;) {result ;i 4;} else if (text.substr(i, 4) lt;) {result ;i 4;} else if (text.substr(i, 7) frasl;) {result /;i 7;} else {result text[i];i;}} else {result text[i];i;}}return result;} };执行用时分布 68ms 击败80.39%使用 C 的用户 消耗内存分布 18.54MB 击败35.29%使用 C 的用户
http://www.pierceye.com/news/315645/

相关文章:

  • 廊坊哪里做网站好费用
  • 织梦建站教程wordpress支持mysqli
  • 松江醉白池网站建设投资公司设立条件
  • 杭州网络seo优化知识
  • 对网站的建议和优化网银汇款企业做网站用途写什么
  • 商务网站的功能和建设制作外贸网站模板
  • 如何防止网站挂黑链怎么购买国外的域名
  • 企业官方网站地址怎么填微信页面设计网站
  • 国外购物网站有哪些郑州网站搜索排名
  • seo网站优化推广费用装饰行业网站建设
  • idea的网站开发登录页面做网页的
  • 寻找大连网站建设wordpress换模板 seo
  • 二手房公司网站源码网站的维护步骤
  • 衡水企业网站建设公司wordpress 快速回复
  • 网站维护需要关闭网站么找哪些公司做网站
  • 阿里巴巴做轮播网站如何建设学校的微网站首页
  • 国内设计好的网站案例网店设计风格怎么写
  • 网站建设长沙创建网页需要多少钱
  • 南通电商网站建设网站背景怎么设置
  • 无锡网站托管aspnet通讯录网站开发
  • 卫计网站建设工作总结铜陵建设行业培训学校网站
  • 手机网站竞价网页界面设计遵循的原则
  • 徐州seo推广公司广州营销型网站优化
  • 小说网站首页模板安徽华力建设集团网站
  • 减肥网站如何做公司企业模板
  • 郑州网站建设搜q.479185700怎么在百度上推广自己的公司信息
  • 深圳住建设局官方网站大连在哪个省市
  • 吉林企业建站系统费用wordpress幻灯片加载很慢
  • com域名和网站小型企业网站排名前十
  • 网站内容 优化泉州网站开发公司