如何实现indexOf原理以及Java和javascript及python实现是怎样的
发表于:2024-11-21 作者:千家信息网编辑
千家信息网最后更新 2024年11月21日,如何实现indexOf原理以及Java和javascript及python实现是怎样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你
千家信息网最后更新 2024年11月21日如何实现indexOf原理以及Java和javascript及python实现是怎样的
如何实现indexOf原理以及Java和javascript及python实现是怎样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
简介
indexOf的含义:给定一个字符串去匹配另一个字符串的下标,如果匹配到,返回下标,如果匹配不到则返回-1,其实原理还是比较简单的,如果需要你实现,那么应该怎么做呢?
原理
现在给定匹配的字符串A,原始字符串B,比如匹配字符串A等于"叫练",原始字符串B等于"边叫边练,我喜欢叫练",你可能一眼就发现"叫练"是最后两个字符,我们以B做循环,一个一个单词去匹配,先找"叫",找到计数器加1,然后继续找"练",发现下个字符不是"练",计数器清零,重新从"叫"开始查找,现在查找到B的倒数第二个字符了,下个字符是"练"计算器再加1,此时计数器等于2也正好是A字符串的长度,说明找到了,查找原理就是这样一个过程;下面我们分别以Java,javascript,python方式实现下。
注意:下面代码没有校验,仅供参考,python是index方法,实现原理一样,但找不到会报错!
实现
Java实现
public static void main(String[] args) { String orgin = "边叫边练,我喜欢叫练"; String serach = "叫练"; int index = indexOf(orgin,serach); System.out.println(index); }/** * indexOf 算法原理 * @param orgin 原始字符串 B = "边叫边练,我喜欢叫练"; * @param serachString 匹配字符串 A="叫练" * @return int 下标 */public static int indexOf(String orgin,String serachString) { char[] chars = orgin.toCharArray(); char[] sChars = serachString.toCharArray(); //返回字符串下标 int index = -1; //匹配字符串计数器,用于查询是否匹配到完整字符串 int s_index = 0; //全局计数器,用于计算下标 int move = 0; for (int i=0; iJavascript实现
/** * @param orgin 原始字符串 B = "边叫边练,我喜欢叫练"; * @param serachString 匹配字符串 A="叫练" **/ function indexOf(orgin,serachString) { //返回字符串下标 var index = -1; //匹配字符串计数器,用于查询是否匹配到完整字符串 var s_index = 0; //全局计数器,用于计算下标 var move = 0; for (var i=0; ipython实现
# indexOf 算法原理# @param orgin 原始字符串 B = "边叫边练,我喜欢叫练";# @param serachString 匹配字符串 A="叫练"# @return int 下标def index(orgin, serachString): # 返回字符串下标 index = -1 # 匹配字符串计数器,用于查询是否匹配到完整字符串 s_index = 0 # 全局计数器,用于计算下标 move = 0 for letter in enumerate(orgin): move = move + 1 # 如果匹配到"叫",继续向下开始匹配"练" if letter[1] == serachString[s_index]: s_index = s_index + 1 if s_index == len(serachString): index = move - len(serachString) break else: s_index = 0; return index看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。
字符
字符串
下标
计数器
原理
原始
我喜欢
全局
查询
算法
帮助
清楚
仅供参考
两个
代码
内容
单词
含义
对此
就是
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全法涉及到哪些主体
怎么登GTAP数据库
计算机网络技术考研有哪些专业
租手游服务器注意事项
服务器管理器如何配置网络
小型软件开发车辆管理系统
学生党学习网络技术
河北it软件开发哪家强
pr怎么打开数据库
浦东新区网络技术咨询欢迎来电
高校网络安全报道
macpro服务器性能
武汉网络技术有限公司排行
pc软件开发大概多少钱
小米软件开发十年工作经验多少钱
怎么看服务器哪个硬盘坏了
游戏软件开发培训中心
好用的手机网络安全
农行软件开发中心成都研发部
慈溪嵌入式软件开发企业
日常八大网络安全隐患
40岁软件开发换工作吗
网络安全法泄漏多少条入罪
浙江计算机软件开发正规平台
fifa22如何登录wa服务器
如何设数据库索引
武夷山高速服务器
机架式服务器如何安装
isca数据库全称
面试 数据库语句