Làm thế nào để bạn palindrome trong python?

Chúc mừng ngày đa văn hóa muộn màng. 02/02/2020 là một ngày đặc biệt trong tháng 2. Nó hoạt động cho dù định dạng ngày ưa thích của bạn là MM/DD/YYYY hay DD/MM/YYYY hay YYYY/MM/DD

Những mẫu này được gọi là palindromes. Đọc chúng từ ký tự đầu tiên hoặc đọc ngược chúng không tạo ra sự khác biệt nào. Đây là một vấn đề giới thiệu thú vị để giải quyết bằng cách sử dụng lập trình. Trong blog này, chúng ta sẽ hiểu quy trình suy nghĩ và đi từng bước và đưa ra các giải pháp khác nhau để kiểm tra xem chuỗi có phải là một palindrome hay không

Palindrome được định nghĩa là một từ, cụm từ, số hoặc chuỗi ký tự khác đọc ngược cũng như đọc xuôi. Chúng được phân thành 3 loại, đó là số Palindrome,
Chuỗi Palindrome, cụm từ Palindrome. Tập hợp các từ và ký tự đặc biệt

Số Palindrome là một tập hợp các số vẫn giống hệt nhau khi đọc ngược lại. Những con số này cũng được cho là đối xứng. Khi các chữ số của nó được đảo ngược, chúng trở thành số chính xác như số ban đầu. ví dụ. 1234321 là một Palindrom. Các chữ số của nó bị đảo ngược, nó lại trở thành 1234321, đó là số ban đầu của chúng tôi. 1234232 không phải là Palindrom. Khi đảo ngược, số mới trở thành 2324321 không giống với số ban đầu

Số Palindrom là gì?

Số Palindrome là một tập hợp các số vẫn giống hệt nhau khi đọc ngược lại. Những con số này cũng được cho là đối xứng. Khi các chữ số của nó được đảo ngược, chúng trở thành số chính xác như số ban đầu. ví dụ. 1234321 là một Palindrom. Các chữ số của nó bị đảo ngược, nó lại trở thành 1234321, đó là số ban đầu của chúng tôi. 1234232 không phải là Palindrom. Khi đảo ngược, số mới trở thành 2324321 không giống với số ban đầu

Chuỗi Palindrome là gì?

Chuỗi Palindrome là một tập hợp các bảng chữ cái vẫn giữ nguyên cách chính xác khi đọc ngược. Chúng còn được gọi là Bảng chữ cái đối xứng. Khi các bảng chữ cái của nó được viết theo thứ tự ngược lại, chúng hóa ra là sự kết hợp chính xác của các bảng chữ cái như chuỗi ban đầu. ví dụ. "bà" là một Palindrome. Bảng chữ cái của nó bị đảo ngược, nó lại trở thành “bà” vốn là chuỗi ban đầu của chúng tôi. "khăn ăn" không phải là một Palindrome. Khi đảo ngược, số mới trở thành “nikpan” khác với chuỗi ban đầu

Cụm từ Palindrome là gì?

Cụm từ Palindrome là một tập hợp các từ và ký tự đặc biệt, vẫn giữ nguyên cách đọc ngược. Những cụm từ này cũng được cho là đối xứng. Khi cụm từ được đảo ngược, chúng trở thành cụm từ giống hệt như cụm từ ban đầu. ví dụ. a1b2c33c2b1a là một Palindrom. Cụm từ này bị đảo ngược, nó lại trở thành a1b2c33c2b1a, đây là cụm từ ban đầu của chúng tôi. a4b523kg không phải là Palindrom. Khi đảo ngược, số mới trở thành gk325b4a, khác với cụm từ ban đầu

Các ví dụ về bảng chữ cái

Dưới đây là một vài ví dụ về Palindromes

  • Mẹ
  • thưa bà
  • a2332a
  • Cao su
  • Bố
  • 123454321

chuyện vặt vãnh. 02/02/2020 có phải là một chuỗi palindrome khi được coi là một cụm từ palindrome không?

Chúng ta sẽ xem xét các bước hợp lý để xây dựng giải pháp kiểm tra các chuỗi có thuộc tính palindrome

Palindrom trong thuật toán Python

Bạn có thể xem qua và đăng ký các khóa học liên quan đến Python này để cảm thấy thoải mái với Ngôn ngữ lập trình Python và nhận chứng chỉ miễn phí trên Great Learning Academy, trước khi thực hành mã và thuật toán Palindromes trong Python

Bây giờ làm thế nào để tạo Palindromes trong Python?

Xem xét thuật toán cho Tuyên bố vấn đề. Tìm xem một chuỗi có phải là Palindrome hay không

  1. Kiểm tra xem các chữ cái đầu tiên và cuối cùng của chỉ mục có giống nhau không;
  2. Lặp lại bước 2 bằng cách tăng chỉ số đầu tiên và giảm chỉ số cuối cùng
  3. Lặp lại bước 3 while first < last If( first > last) then return True

Bây giờ chúng ta đã có thuật toán, hãy chuyển đổi nó thành mã theo logic tương tự

Bảng chữ cái trong Mã Python

Sử dụng vòng lặp While

KIỂM TRA MÃ

Đầu vào — Bà
Đầu ra - Nó là một bảng màu

Đây là một cách tiếp cận tốt, nhưng python cũng cho phép chúng ta sử dụng chức năng đảo ngược. Bằng trực giác, chúng ta biết rằng một từ được đọc xuôi và ngược, nếu giống nhau thì đó là một từ ngược. Do đó, chúng ta hãy tạo chuỗi tiến và lùi cho cùng một chuỗi và kiểm tra xem hai chuỗi có giống nhau không

Sử dụng chức năng đảo ngược

KIỂM TRA MÃ

Đầu vào. Nhập chuỗi. tiếng Malayalam
đầu ra. nó là một bảng màu

Hãy đẩy mạnh điều này và xem xét một cấu trúc dữ liệu khác. Nếu dữ liệu được lưu trữ trong danh sách liên kết thì sao? . Danh sách được liên kết là một cấu trúc dữ liệu có cấp phát bộ nhớ không liền kề

Chúng ta sẽ bắt đầu bằng việc định nghĩa một danh sách liên kết trong python

KIỂM TRA MÃ

Đầu ra –
3, 7, 3 — Đúng
1 — Đúng

Logic để kiểm tra xem một danh sách được liên kết có phải là một bảng màu hay không là phiên bản đã sửa đổi của phiên bản chúng tôi đã triển khai trên các chuỗi và mảng. Chúng tôi kiểm tra xem đảo ngược của danh sách được liên kết có giống với chuỗi ban đầu không. Thay vì đảo ngược toàn bộ danh sách được liên kết và lưu trữ nó ở một vị trí tạm thời, chúng tôi đảo ngược nửa đầu của danh sách được liên kết và kiểm tra xem nửa đầu và nửa sau có khớp không sau khi đảo ngược

Kiểm tra Thuật toán a* trong Trí tuệ nhân tạo

Do đó, chúng tôi định nghĩa một hàm gọi là palindrome, có các tham số nút, var (viết tắt của biến), trước đó và tạm thời. Chúng tôi chuyển đến cuối danh sách bằng cách sử dụng biến var ở dòng 29 và trong khi đó, chúng tôi lưu trữ dữ liệu nút trước đó trong biến prev. Do đó, so sánh trước. val và đuôi. val ở dòng 41 cho chúng ta câu trả lời

Trong bài viết này, chúng tôi đã xem xét palindromes từ trong ra ngoài và hiểu chúng một cách thấu đáo. Hãy thử đưa ra các kỹ thuật triển khai tốt hơn bằng cách sử dụng các cấu trúc dữ liệu khác nhau để cải thiện lệnh của bạn đối với mã hóa. Chúng tôi sẽ tiếp tục đăng nhiều bài viết khác về triển khai cấu trúc dữ liệu và thuật toán bằng Python. Giữ nguyên