Computer >> Máy Tính >  >> Lập trình >> Python

Chương trình xoay một chuỗi có kích thước n, n lần sang trái trong Python

Giả sử chúng ta có một chuỗi s có kích thước là n. Chúng ta phải tìm tất cả các chuỗi đã xoay bằng cách xoay chúng 1 chỗ, 2 chỗ ... n chỗ.

Vì vậy, nếu đầu vào là s =​​"hello", thì đầu ra sẽ là ['elloh', 'llohe', 'lohel', 'ohell', 'hello']

Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -

  • res:=một danh sách mới
  • n:=kích thước của s
  • đối với tôi trong phạm vi từ 0 đến n, thực hiện
    • s:=(chuỗi con của s từ chỉ mục 1 đến n-1) nối s [0]
    • chèn s vào cuối res
  • trả lại res

Ví dụ

Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -

def solve(s):
   res = []
   n = len(s)
   for i in range(0, n):
      s = s[1:n]+s[0]
      res.append(s)
   return res

s = "hello"
print(solve(s))

Đầu vào

hello

Đầu ra

['elloh', 'llohe', 'lohel', 'ohell', 'hello']