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

Chương trình Python in tất cả hoán vị của một chuỗi


Trong bài viết này, chúng ta sẽ tìm hiểu giải pháp cho bài toán sau:

Đề bài – Cho một chuỗi, cần hiển thị tất cả các hoán vị (permutation) có thể của chuỗi đó.

Hãy quan sát giải pháp trong triển khai dưới đây:

Ví dụ

# chuyển list sang chuỗi
def toString(List):
    return ''.join(List)

# hoán vị
def permute(a, l, r):
    if l == r:
        print(toString(a))
    else:
        for i in range(l, r + 1):
            a[l], a[i] = a[i], a[l]
            permute(a, l + 1, r)
            a[l], a[i] = a[i], a[l]  # backtracking

# main
string = "TUT"
n = len(string)
a = list(string)
print("Các hoán vị có thể:", end="\n")
permute(a, 0, n-1)

Kết quả

Các hoán vị có thể:
TUT
TTU
UTT
UTT
TUT
TTU

Kết luận

Trong bài này, chúng ta đã học cách làm chương trình Python in tất cả hoán vị của một chuỗi cho trước.