Algorithm to Shuffle String in Python3 According to Index

  • 时间:2020-10-11 15:17:18
  • 分类:网络文摘
  • 阅读:100 次

Given a string s and an integer array indices of the same length. The string s will be shuffled such that the character at the ith position moves to indices[i] in the shuffled string. Return the shuffled string.

string-shuffle Algorithm to Shuffle String in Python3 According to Index python string

string-shuffle

Example 1:
Input: s = “codeleet”, indices = [4,5,6,7,0,2,1,3]
Output: “leetcode”
Explanation: As shown, “codeleet” becomes “leetcode” after shuffling.

Example 2:
Input: s = “abc”, indices = [0,1,2]
Output: “abc”
Explanation: After shuffling, each character remains in its position.

Example 3:
Input: s = “aiohn”, indices = [3,1,4,2,0]
Output: “nihao”

Example 4:
Input: s = “aaiougrt”, indices = [4,0,2,6,7,3,1,5]
Output: “arigatou”

Example 5:
Input: s = “art”, indices = [1,0,2]
Output: “rat”

Constraints:
s.length == indices.length == n
1 <= n <= 100
s contains only lower-case English letters.
0 <= indices[i] < n
All values of indices are unique (i.e. indices is a permutation of the integers from 0 to n – 1).

Hints:
You can create an auxiliary string t of length n.
Assign t[indexes[i]] to s[i] for each i from 0 to n-1.

Shuffle String In Python3

In Python, we can use list(s) to convert a string into a Character array. Then by using enumerate, we can re-arrange/shuffle the characters according to the given indices. Finally, we can join the characters into a result string that is shuffled.

1
2
3
4
5
6
class Solution:
    def restoreString(self, s: str, indices: List[int]) -> str:
        res = list(s)
        for i in enumerate(indices):
            res[i[1]] = s[i[0]]
        return ''.join(res)
class Solution:
    def restoreString(self, s: str, indices: List[int]) -> str:
        res = list(s)
        for i in enumerate(indices):
            res[i[1]] = s[i[0]]
        return ''.join(res)

–EOF (The Ultimate Computing & Technology Blog) —

推荐阅读:
The Permutation Iterator in Python  Compute the Indices of the Target Element in Array/List using Py  5 Cognitive Biases You Can Use to Boost E-Commerce Conversions  Important SEO Tips for E-commerce That You Cannot Disregard  5 Effective Ways to Improve Blog Conversion Rate  7 Reasons Blogging is Essential for Law Firms  Should Your Blog Extend Into Multimedia Forms of Content?  How Small Companies Can Use Big Data  Hands Up and Step Slowly Away from the Keyboard: Why Good Execut  How to Improve Bad Blog Posts 
评论列表
添加评论