สมมติว่าเรามีสตริงสองตัว s และ t เราต้องหาสตริงที่สลับกัน เริ่มจากสตริงแรก s หากมีตัวอักษรเหลือในสตริงใดสตริงหนึ่ง จะถูกเพิ่มเข้าไปที่ท้าย
ตัวอย่าง
หากอินพุตคือ s = "abcd", t = "pqrstu" ผลลัพธ์จะเป็น "apbqcrdstu"
ขั้นตอนการแก้ปัญหา
res:= สตริงว่างi:= 0m:= ค่าต่ำสุดของขนาดของs, ขนาดของt- ในขณะที่
i < m:res:=resต่อs[i]ต่อt[i]i:=i + 1
- คืนค่า
resต่อs[จากดัชนี i ถึงสุดท้าย]ต่อt[จากดัชนี i ถึงสุดท้าย]
การใช้งาน
class Solution:
def solve(self, s, t):
res = ""
i = 0
m = min(len(s), len(t))
while i < m:
res += s[i] + t[i]
i += 1
return res + s[i:] + t[i:]
ob = Solution()
s = "abcd"
t = "pqrstu"
print(ob.solve(s, t))
อินพุต
"abcd", "pqrstu"
เอาต์พุต
apbqcrdstu