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

ต่อสตริงด้วยตัวอักษรที่ไม่ซ้ำกันใน Python

มีสตริงสองสตริง ก่อนอื่นต้องลบตัวอักษรที่ซ้ำกันออกจากสตริงแรก แล้วต่อตัวอักษรที่ไม่ซ้ำของสตริงที่สองกับตัวอักษรที่ไม่ซ้ำของสตริงแรก

ตัวอย่าง

Input >> first string::AABCD Second string:: MNAABP
Output >> CDMNP

อัลกอริทึม

Uncommonstring(s1,s2) /* s1 และ s2 คือสตริงสองตัว */
ขั้นตอนที่ 1: แปลงทั้งสองสตริงเป็นเซต st1 และ st2
ขั้นตอนที่ 2: ใช้ intersection ของเซตทั้งสองเพื่อหาตัวอักษรที่ซ้ำกัน
ขั้นตอนที่ 3: แยกตัวอักษรในแต่ละสตริงที่ไม่ซ้ำกันในทั้งสองสตริง
ขั้นตอนที่ 4: รวมตัวอักษรแต่ละตัวโดยไม่มีช่องว่างเพื่อได้สตริงสุดท้าย

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

# การต่อสตริงตัวอักษรที่ไม่ซ้ำกันสองสตริง
def uncommonstring(s1, s2):
    # แปลงทั้งสองสตริงเป็นเซต
    st1 = set(s1)
    st2 = set(s2)
    # หา intersection เพื่อดึงตัวอักษรที่ซ้ำกัน
    lst = list(st1 & st2)
    finallist = [i for i in s1 if i not in lst] + \
                [i for i in s2 if i not in lst]
    print("สตริงที่ต่อกันคือ :::", ''.join(finallist))

# โปรแกรมหลัก
if __name__ == "__main__":
    s1 = input("ป้อนสตริง ::")
    s2 = input("ป้อนสตริง ::")
    uncommonstring(s1, s2)

ผลลัพธ์

ป้อนสตริง ::abcde
ป้อนสตริง ::bdkl
สตริงที่ต่อกันคือ ::: acekl