Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Chương trình xáo trộn chuỗi theo chỉ số cho trước trong Python

Cho chuỗi s và danh sách chỉ số ind cùng độ dài. Ký tự tại vị trí i sẽ được di chuyển đến vị trí ind[i] trong chuỗi kết quả.

Ví dụ: s = "ktoalak", ind = [0,5,1,6,2,4,3] → "kolkata".

Thuật toán

  • Tạo danh sách fin_str cùng độ dài s, khởi tạo giá trị 0.
  • Duyệt qua từng cặp (i, v) của s:
    • Gán fin_str[ind[i]] = v.
  • Nối các ký tự trong fin_str và trả về.

Ví dụ (Python)

def solve(s, ind):
    fin_str = [0] * len(s)
    for i, v in enumerate(s):
        fin_str[ind[i]] = v
    return "".join(fin_str)

s = "ktoalak"
ind = [0,5,1,6,2,4,3]
print(solve(s, ind))

Đầu vào

"ktoalak", [0,5,1,7,2,4,3]

Đầu ra

kolkata