LeetCode 5472. 重新排列字符串

简介: 给你一个字符串 `s` 和一个 **长度相同** 的整数数组 `indices` 。

给你一个字符串 s 和一个 长度相同 的整数数组 indices 。

请你重新排列字符串 s ,其中第 i 个字符需要移动到 indices[i] 指示的位置。

返回重新排列后的字符串。

示例 1:

**输入:**s = "codeleet", `indices` = [4,5,6,7,0,2,1,3]
**输出:**"leetcode"
**解释:**如图所示,"codeleet" 重新排列后变为 "leetcode" 。

**示例 2:**

**输入:**s = "abc", `indices` = [0,1,2]
**输出:**"abc"
**解释:**重新排列后,每个字符都还留在原来的位置上。

**示例 3:**

**输入:**s = "aiohn", `indices` = [3,1,4,2,0]
**输出:**"nihao"

**示例 4:**

**输入:**s = "aaiougrt", `indices` = [4,0,2,6,7,3,1,5]
**输出:**"arigatou"

**示例 5:**

**输入:**s = "art", `indices` = [1,0,2]
**输出:**"rat"

解题思路

class Solution:
    def restoreString(self, s: str, indices: [int]) -> str:
        tempList = [""]*len(indices)
        strList = list(s)
        for idx,val in enumerate(indices):
            tempStr = strList[idx]
            tempList[val] = tempStr
        # print(tempList)
        return "".join(tempList)
目录
相关文章
|
2月前
|
算法 C++ 容器
Leetcode第三十一题(下一个排列)
这篇文章介绍了LeetCode第31题“下一个排列”的C++解决方案,该算法通过原地修改数组来找到下一个字典序更大的排列,如果不存在则重排为字典序最小的排列。
31 0
Leetcode第三十一题(下一个排列)
|
2月前
|
JavaScript
力扣3333.找到初始输入字符串Ⅱ
【10月更文挑战第9天】力扣3333.找到初始输入字符串Ⅱ
34 1
|
2月前
|
C++
Leetcode第43题(字符串相乘)
本篇介绍了一种用C++实现的字符串表示的非负整数相乘的方法,通过逆向编号字符串,将乘法运算转化为二维数组的累加过程,最后处理进位并转换为字符串结果,解决了两个大数相乘的问题。
25 9
|
2月前
|
算法 C++
Leetcode第八题(字符串转换整数(atoi))
这篇文章介绍了LeetCode上第8题“字符串转换整数(atoi)”的解题思路和C++的实现方法,包括处理前导空格、正负号、连续数字字符以及整数溢出的情况。
19 0
|
2月前
【LeetCode 22】459.重复的子字符串
【LeetCode 22】459.重复的子字符串
30 0
|
2月前
【LeetCode 20】151.反转字符串里的单词
【LeetCode 20】151.反转字符串里的单词
19 0
|
2月前
【LeetCode 19】541.反转字符串II
【LeetCode 19】541.反转字符串II
21 0
|
2月前
【LeetCode 18】6.2.反转字符串
【LeetCode 18】6.2.反转字符串
15 0
|
3月前
|
Unix Shell Linux
LeetCode刷题 Shell编程四则 | 194. 转置文件 192. 统计词频 193. 有效电话号码 195. 第十行
本文提供了几个Linux shell脚本编程问题的解决方案,包括转置文件内容、统计词频、验证有效电话号码和提取文件的第十行,每个问题都给出了至少一种实现方法。
LeetCode刷题 Shell编程四则 | 194. 转置文件 192. 统计词频 193. 有效电话号码 195. 第十行
|
4月前
|
搜索推荐 索引 Python
【Leetcode刷题Python】牛客. 数组中未出现的最小正整数
本文介绍了牛客网题目"数组中未出现的最小正整数"的解法,提供了一种满足O(n)时间复杂度和O(1)空间复杂度要求的原地排序算法,并给出了Python实现代码。
121 2