📅  最后修改于: 2023-12-03 15:26:42.473000             🧑  作者: Mango
在编程中,我们有时需要对给定的字符串进行一些处理,其中之一是反转字符串的子字符串。如果我们已经知道要反转的子字符串的索引,则可以使用以下方法反转字符串。
reverseSubstring(str, indexes)
// 将字符串转化为数组
arr = str.toCharArray()
// 针对每个索引对,将子字符串翻转
for each (start, end) in indexes
substring = arr.slice(start, end + 1)
substring.reverse()
arr.splice(start, substring.length, ...substring)
// 将数组转换为字符串
return arr.join('')
function reverseSubstring(str, indexes) {
const arr = str.split('');
for (const [start, end] of indexes) {
const substring = arr.slice(start, end + 1).reverse();
arr.splice(start, substring.length, ...substring);
}
return arr.join('');
}
console.log(reverseSubstring('abcdef', [[1, 3], [4, 5]])); // "aedcbf"
def reverseSubstring(s: str, indexes: List[List[int]]) -> str:
arr = list(s)
for start, end in indexes:
substring = arr[start:end + 1][::-1]
arr[start:end + 1] = substring
return ''.join(arr)
print(reverseSubstring('abcdef', [[1, 3], [4, 5]])) # "aedcbf"
以上就是如何根据给定的索引数组反转给定字符串的子字符串的详细介绍。该算法可以在 JavaScript,Python等编程语言中实现。通过反转字符串中索引指定的子字符串,我们可以轻松地将任何给定的字符串转换为所需的格式。