Hướng dẫn find all non overlapping substrings python - tìm tất cả các chuỗi con không chồng chéo python
Đưa ra một chuỗi, tìm tất cả các kết hợp của các chuỗi con không chồng chéo của nó. Show Xin lưu ý rằng vấn đề cụ thể nhắm mục tiêu các chuỗi con tiếp giáp (nghĩa là, chiếm các vị trí liên tiếp) và vốn đã duy trì thứ tự của các yếu tố. & nbsp; Ví dụ, Đầu vào: & nbsp; ABC ABC & nbsp; Đầu ra: [a, b, c], [a, bc], [ab, c], [abc]Output: [A, B, C], [A, BC], [AB, C], [ABC]
& nbsp; Đầu vào: & nbsp; A B C DInput: ABCD & nbsp; Đầu ra: [a, b, c, d], [a, b, cd], [a, bc, d], [a, bcd], [ab, c, d], [ab, cd], [abc , D], [ABCD]Output: [A, B, C, D], [A, B, CD], [A, BC, D], [A, BCD], [AB, C, D], [AB, CD], [ABC, D], [ABCD]
Ý tưởng là sử dụng đệ quy để giải quyết vấn đề này. Đối với một chuỗi đã cho Sau đây là việc thực hiện C ++, Java và Python của ý tưởng: C++
& nbsp; & nbsp; & nbsp; & nbsp; // trường hợp cơ sở & nbsp; & nbsp; & nbsp; & nbsp; // vector để lưu trữ các chuỗi con không chồng chéo & nbsp; & nbsp; & nbsp; & nbsp; // tìm tất cả các chuỗi con không chồng chéo
} Tải xuống & nbsp; & nbsp; mã Đầu ra: [[ab, cd], [a, bc, d], [a, bcd], [abc, d], [a, b, cd], [ab, c, d], [a, b, C, D], [ABCD]]
Tải xuống & nbsp; & nbsp; mã Đầu ra: {('ab', 'cd'), ('a', 'bcd'), ('a', 'bc', 'd'), ('abc', 'd'), ('ab',' C ',' d '), (' abcd ',), (' a ',' b ',' c ',' d '), (' a ',' b ',' cd ')} Độ phức tạp của thời gian của giải pháp trên là theo cấp số nhân vì có chính xác các kết hợp Cảm ơn vì đã đọc. Vui lòng sử dụng trình biên dịch trực tuyến của chúng tôi để đăng mã trong các nhận xét bằng C, C ++, Java, Python, JavaScript, C#, PHP và nhiều ngôn ngữ lập trình phổ biến hơn. Như chúng tôi?Giới thiệu chúng tôi với bạn bè của bạn và giúp chúng tôi phát triển.Mã hóa hạnh phúc :) :) |