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

สลับองค์ประกอบดัชนีคู่และองค์ประกอบดัชนีคี่ใน Python


สมมติว่าเรามีรายการตัวเลขที่เรียกว่า nums เราจะแลกเปลี่ยนดัชนีคู่ที่ต่อเนื่องกัน และแลกเปลี่ยนดัชนีคี่ที่ต่อเนื่องกันแต่ละดัชนี

ดังนั้น หากอินพุตเป็น [1,2,3,4,5,6,7,8,9] ผลลัพธ์จะเป็น [3, 4, 1, 2, 7, 8, 5, 6, 9 ]

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

  • ความยาว :=ขนาดของตัวเลข
  • สำหรับฉันในช่วง 0 ถึงความยาว เพิ่มขึ้น 4 ทำ
    • ถ้า i+2<ความยาว แล้ว
      • แลกเปลี่ยน nums[i] และ nums[i+2]
    • ถ้า i+3<ความยาว แล้ว
      • แลก nums[i+1] และ nums[i+3]
  • หมายเลขส่งคืน

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

ตัวอย่าง

class Solution:
   def solve(self, nums):
      length = len(nums)
      for i in range(0,length,4):
         if(i+2<length):
            nums[i], nums[i+2] = nums[i+2], nums[i]
         if(i+3<length):
            nums[i+1], nums[i+3] = nums[i+3], nums[i+1]
      return nums
ob = Solution()
nums = [1,2,3,4,5,6,7,8,9]
print(ob.solve(nums))

อินพุต

[1,2,3,4,5,6,7,8,9]

ผลลัพธ์

[3, 4, 1, 2, 7, 8, 5, 6, 9]