Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

โปรแกรม Python ตรวจสอบว่าทั้งสองส่วนของสตริงมีชุดอักขระเหมือนกันหรือไม่


ให้สตริง หน้าที่ของเราคือตรวจสอบว่าทั้งสองส่วนของสตริงมีชุดอักขระเหมือนกันหรือไม่ เพื่อแก้ปัญหานี้ ก่อนอื่นเราแยกสตริงออกจากตรงกลาง เราจึงได้สองส่วน ตอนนี้เราตรวจสอบแต่ละส่วนที่มีชุดอักขระเหมือนกันหรือไม่ หากความยาวของสตริงไม่เท่ากัน ให้ละเว้นองค์ประกอบตรงกลางและตรวจสอบส่วนที่เหลือ

อัลกอริทึม

Step 1: Given a string.
Step 2: Break the input string into two parts.
Step 3: Then convert both parts into a dictionary using Counter(iterator) method and each dictionary contains its character as key and frequency as value.
Step 4: Now compare these two dictionaries. Here we use == operator. First we checks keys of both dictionaries are same or not,
then checks for values of each key. If both cases are true then two halves have the same set of characters.

โค้ดตัวอย่าง

from collections import Counter
def checkhalves(input):
   length = len(input)
   if (length % 2 != 0):
      first = input[0:int(length / 2)]
      second = input[(int(length / 2)) + 1:]
   else:
      first = input[0:int(length / 2)]
      second = input[int(length / 2):]
   if Counter(first) == Counter(second):
      print ("Both halves are same")
   else:
      print ("Both halves are not same ")
# Driver program
if __name__ == "__main__":
input = input("Enter The String")
checkhalves(input)

ผลลัพธ์

Enter The String abba
Both halves are same