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

华为OD算法复习2——字符串

这些力扣题目来源AI推荐karshey博主目录344.反转字符串通过541.反转字符串II通过151.反转字符串中的单词通过28.找出字符串中第一个匹配项的下标KMP通过459.重复的子字符串KMP通过344.反转字符串通过344.反转字符串is.length/2 翻转终止条件不能有等号。因为很可能会多翻转一次。/** * param {character[]} s * return {void} Do not return anything, modify s in-place instead. */ // s [h,e,l,l,o] s[A, ,m,a,n,,, ,a, ,p,l,a,n,,, ,a, ,c,a,n,a,l,:, ,P,a,n,a,m,a] var reverseString function(s) { for(let i0;is.length/2;i){ let temps[i]; s[i]s[s.length-i-1]; s[s.length-i-1]temp; } return s; }; console.log(reverseString(s));541.反转字符串II通过541.反转字符串II字符串substr可以取子/** * param {string} s * param {number} k * return {string} */ // s abcdefg, k 2 s abcd, k 2 var reverseStr function(s, k) { let ans for(let i0;is.length;i2*k){ let former (s.substr(i,k)).split().reverse().join(); let later s.substr(ik,k); ansformerlater; } return ans; }; console.log(reverseStr(s,k));151.反转字符串中的单词通过151.反转字符串中的单词数组的filter方法可以筛选符合标准的元素s a good example /** * param {string} s * return {string} */ var reverseWords function(s) { return s.split( ).filter(itemitem!).reverse().join( ); }; console.log(reverseWords(s));28.找出字符串中第一个匹配项的下标KMP通过28.找出字符串中第一个匹配项的下标KMPindexOf可以用来查找是否有元素存在于数组、字符串let haystack sadbutsad, needle sad /** * param {string} haystack * param {string} needle * return {number} */ var strStr function(haystack, needle) { return haystack.indexOf(needle); }; console.log(strStr(haystack,needle)); // let test [9,7,4,2].indexOf(4) // console.log(test);459.重复的子字符串KMP通过459.重复的子字符串KMP超出输出限制 -- 力扣报错 是因为忘记删除调试用的console.log思路如果一个字符串可以由重复的子串组成证明它的因数之一包含1可以作为子串的长度。先收集因数然后遍历查询// s abab s abcabcabcabc // s bb /** * param {string} s * return {boolean} */ var repeatedSubstringPattern function(s) { let record[] let result false; for(let i1;is.length;i){ if(s.length%i0) record.push(i); } console.log(record); for(let irecord.length-1;i0;i--){ let subs.substr(0,record[i]) let this_round true; for(let jrecord[i];js.length;jrecord[i]){ let temps.substr(j,record[i]); if(sub!temp) { this_roundfalse; } } if(this_round) { return true; }; } return result; }; console.log(repeatedSubstringPattern(s));
http://www.zskr.cn/news/1389023.html

相关文章:

  • TracerKit:基于eBPF的Linux系统追踪工具集设计与实践
  • 关于Spring AI Alibaba
  • 【Android】图片工具箱-免费开源图片处理软件
  • 三步解锁WeMod专业功能:Wand-Enhancer终极指南
  • Unity2D Tilemap进阶指南:从基础绘制到规则瓦片(Rule Tile)与动画瓦片的实战应用
  • Git worktree 实战:告别假性高效,构建多分支并行开发沙盒
  • 在杰理AC6966B开发板开发TWS音箱-开发指南(下):主从固定与性能优化
  • 高级游戏加速引擎架构设计:OpenSpeedy系统级Hook技术深度解析与性能优化方案
  • 2026年降AI不用愁!3招高效降AI率,快速过审不踩雷! - 降AI实验室
  • LLM推理中的KV缓存优化与AI代理性能提升
  • 3分钟搞定九大网盘下载加速:LinkSwift直链下载助手完全指南
  • Unity多角色模型包:跨种族骨骼协议与动画复用实战指南
  • DeepSeek-Reasonix:一个为缓存而生的终端编程 Agent,99.8% 缓存命中率的秘密
  • 如何让QQ音乐加密格式在你的Mac上自由播放:QMCDecode解密指南
  • 2026年GEO系统公司全景评测:五大源头厂商商业盈利深度横评 - 品牌报告
  • 八大网盘直链下载终极指南:告别限速,免费获取高速下载链接
  • 微信聊天记录永久保存终极指南:WeChatExporter开源工具快速上手
  • LinkSwift网盘直链下载助手:3分钟解锁九大网盘下载自由
  • 3个痛点+4大功能:WeChatExporter帮你永久保存微信聊天记忆
  • 5步打造Windows掌机终极控制体验:HandheldCompanion完整指南
  • 告别ListView的折腾:用QML TableView快速搞定商品管理表格(附完整代码)
  • 超越字段计算器:在ArcGIS Pro插件中实现更智能的属性表联动更新
  • MCP 2026漏洞修复七步法:工控网关JWT令牌溢出RCE实战指南
  • Aximmetry+UE5个人虚拟演播室最小可行搭建指南
  • Arm工具链嵌入式代码覆盖率分析实战指南
  • 深耕无油压缩机领域多年 老牌制造公司 高口碑设备满足多行业用气需求(2026年5月最新)) - GEO排行榜
  • 2026年精选:深圳专业的滚针光学挑选机定制厂家 - 品牌推广大师
  • 华为手机Charles抓包HTTPS失败原因与系统级证书注入方案
  • data.table三元组i,j,by底层原理与高性能数据处理
  • 别再手搓连线了!用WPF从零撸一个可拖拽的流程图控件(附完整源码)