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

โปรแกรมที่จะรวมสตริงสลับกันโดยใช้ Python


สมมติว่าเรามีสองสตริง s และ t เราต้องรวมเข้าด้วยกันโดยเพิ่มตัวอักษรสลับกัน เริ่มตั้งแต่ s. หาก s และ t มีความยาวไม่เท่ากัน ให้เพิ่มตัวอักษรพิเศษที่ส่วนท้ายของสตริงที่ผสาน

ดังนั้น หากอินพุตเป็น s ="major" t ="general" เอาต์พุตจะเป็น "mgaejnoerral" เนื่องจาก t มากกว่า s เราจึงเพิ่มส่วน "ral" เพิ่มเติมในตอนท้าย

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -

  • ผม :=j :=0

  • ผลลัพธ์ :=สตริงว่าง

  • ในขณะที่ฉัน <ขนาดของ s และ j <ขนาดของ t ทำ

    • ผลลัพธ์ :=ผลลัพธ์ต่อกัน s[i] ต่อกัน t[j]

    • ผม :=ผม + 1

    • เจ :=เจ + 1

  • ในขณะที่ฉัน <ขนาดของ s ทำ

    • ผลลัพธ์ :=ผลลัพธ์ต่อกัน s[i]

    • ผม :=ผม + 1

  • ในขณะที่ j <ขนาดของ t ทำ

    • ผลลัพธ์ :=เชื่อมผลลัพธ์ t[j]

    • เจ :=เจ + 1

  • ส่งคืนผลลัพธ์

ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -

ตัวอย่าง

def solve(s, t):
   i = j = 0
   result = ""
   while i < len(s) and j < len(t):
      result += s[i] + t[j]
      i+=1
      j+=1
   while i < len(s):
      result += s[i]
      i += 1
   while j < len(t):
      result += t[j]
      j += 1
   return result
s = "major"
t = "general"
print(solve(s, t))

อินพุต

"major", "general"

ผลลัพธ์

mgaejnoerral