字符串的一个算法题
时间:2020-09-23 09:16:24
收藏:0
阅读:45
今天好未来笔试的一个题:给定一个字符串,将其按组倒序。
- 输入:
hello world xyz
- 输出:
xyz world hello
// log
/**
* 元素倒序
* @param str string字符串 输入字符串
* @return string{string}字符串
*/
function reverse(str) {
let start = 0
let end = 0
let arr = []
let flag = getFlag(arr[0])
for (let i = 1; i < str.length; i++) {
if (flag !== getFlag(str[i])) {
end = i
arr.push(str.substring(start, end))
flag = getFlag(str[i])
start = i
}
if (i === str.length - 1) {
arr.push(str.substring(start))
}
}
return arr.reverse().join(‘‘)
}
function getFlag(str) {
let reg1 = /[\d\w]/
let reg2 = /\s/
if (reg1.test(str)) {
return 1
}
if (reg2.test(str)) {
return 2
}
return 3
}
console.log(reverse(‘hello world xyz‘))
原文:https://www.cnblogs.com/oceans/p/13715700.html
评论(0)