0
点赞
收藏
分享

微信扫一扫

编写一个函数来查找字符串数组中的最长公共前缀

云岭逸人 2022-02-17 阅读 45
javascript

判断一串字符串类型的数组中公共的前缀,有一项不一样则return空;

实例1:

输入: ["flower","flow","flight"]
输出: "fl"

实例2:

输入: ["dog","racecar","car"]
输出: ""
解释: 输入不存在公共前缀。

实例3:

输入: ["abc","abc","lzy"]
输出: ""
解释: 有一项不是公共的前缀

代码: 

//编写一个函数来查找字符串数组中的最长公共前缀。
function longString(arr){
	// 拿出数组第一个元素
	var str = arr[0]
	// 从第二个元素开始遍历 
	for(var i=1;i<arr.length;i++){
		// 拿第一个元素跟剩下的字符串元素遍历比较  
		//!!!注意!!!这里要用var 不能用let 否则
		for(var j=0;j<str.length&&j<arr[i].length;j++){
			// 如果一项不等于跳出循环
			if(str.charAt(j)!==arr[i].charAt(j)){
				break
			}	
		}
		// 字符串截取
		str=str.substring(0,j)
	}
	if(str===null){
		return ''
	}
	return str
}
longString(['abc','ab','abcd'])

难点总结:

        string.charAt ( j )          //  这个方法可返回指定位置的字符

        string.substring(0 , j )    //字符串截取

举报

相关推荐

0 条评论