news 2026/4/2 11:26:52

leetcode 困难题 745.Prefix and Suffix Search 前缀和后缀搜索

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
leetcode 困难题 745.Prefix and Suffix Search 前缀和后缀搜索

Problem: 745. Prefix and Suffix Search 前缀和后缀搜索

解题过程

ASCII内,"{"刚好在"z"后面,所以算是特殊字符,按照提示拼起来,然后放入到字典树当中去,并且在{后面的前缀需要求出最大的索引

查询的话直接在字典树上面找就可以,若是空则-1,最后返回最大的索引

Code

class trie { public: bool isend = false; int index = -1; trie* arr[27] = {nullptr}; }; class WordFilter { public: trie* root, *ptr; WordFilter(vector<string>& words) { root = new trie; string tp; for( int i = 0; i < words.size(); i++ ) { ptr = root; tp = "-" + words[i] + "{" + words[i]; while(true) { ptr = root; tp = tp.substr(1, tp.size() - 1); bool pre = false; for(int j = 0; j < tp.size(); j++) { if(ptr->arr[tp[j]-'a'] == nullptr) { ptr->arr[tp[j]-'a'] = new trie; } ptr = ptr->arr[tp[j]-'a']; if(pre) { ptr->index = max(ptr->index, i); } if(tp[j]=='{') pre = true; } if(tp[0]=='{') break; } } } int f(string pref, string suff) { string combine = suff + "{" + pref; ptr = root; for(int i = 0; i < combine.size(); i++) { if(ptr->arr[combine[i]-'a']==nullptr) { return -1; } ptr = ptr->arr[combine[i]-'a']; } return ptr->index; } }; /** * Your WordFilter object will be instantiated and called as such: * WordFilter* obj = new WordFilter(words); * int param_1 = obj->f(pref,suff); */
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/26 14:57:32

三星最新款手机推荐:三折叠形态如何重塑旗舰体验?

当手机厂商还在折叠屏形态上博弈&#xff0c;一款能实现四屏三折叠的设备横空出世——三星Galaxy Z TriFold的到来&#xff0c;是否重新定义了旗舰手机的可能性&#xff1f;作为三星最新推出的折叠屏旗舰&#xff0c;它以突破性设计和全面升级的配置&#xff0c;为消费者带来了…

作者头像 李华
网站建设 2026/3/26 3:34:52

智能测试用例生成技术探秘

1 技术演进&#xff1a;从手动到智能的范式转移 传统测试用例设计严重依赖测试人员的经验判断&#xff0c;存在覆盖盲区与效率瓶颈。随着DevOps和持续测试的普及&#xff0c;智能测试用例生成技术通过机器学习、自然语言处理与代码静态分析等技术的融合&#xff0c;实现了测试…

作者头像 李华
网站建设 2026/4/2 23:31:22

三步走截取长图

如果觉得好&#xff0c;请点赞、收藏转发和关注&#xff0c;感谢您!测试环境&#xff1a;windows10使用场景&#xff1a;无法保存的内容声明&#xff1a;禁止用于非法目的&#xff0c;否则后果自负&#xff01;上图&#xff01;

作者头像 李华
网站建设 2026/3/26 3:26:02

瞬行PRO_9.9.9_高级版

瞬行PRO_9.9.9_高级版 链接&#xff1a;https://pan.xunlei.com/s/VOgRYhSSLjN4Y34iBXDOmA5qA1?pwddks7# 一款定位修改工具依托调试API与百度地图&#xff0c;能精准模拟全球任意地点&#xff0c;无需Root权限&#xff0c;只需在开发者模式中&#xff0c;将模拟位置信息应用…

作者头像 李华
网站建设 2026/4/2 0:34:44

AI在测试中的应用:现状与未来

1 智能测试的当下图景 1.1 测试用例生成的精准化革命 当前主流测试工具已实现基于代码静态分析的测试用例自动生成。通过深度学习模型对历史缺陷库进行模式挖掘&#xff0c;AI能够识别出易错代码模式并针对性生成边界测试数据。例如在金融系统测试中&#xff0c;基于时序预测…

作者头像 李华