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

โปรแกรมตรวจสอบความถี่ขององค์ประกอบใน Python . เท่ากันหรือไม่


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

ดังนั้น หากอินพุตมีค่าเท่ากับ nums =[8, 9, 9, 8, 5, 5] ผลลัพธ์จะเป็น True เพราะตัวเลขทั้งหมดเกิดขึ้นสองครั้ง

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

  • ถ้าขนาดของตัวเลขเป็นเลขคี่

    • คืนค่าเท็จ

  • เรียงเลขรายการ

  • สำหรับฉันในช่วง 1 ถึงขนาดของ nums ทำ

    • ถ้า nums[i] เหมือนกับ nums[i - 1] แล้ว

      • nums[i] :=0,

      • nums[i - 1] :=0

  • คืนค่า จริง เมื่อผลรวมขององค์ประกอบทั้งหมดที่มีอยู่ใน nums เท่ากับ 0 มิฉะนั้นเป็นเท็จ

ตัวอย่าง

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

def solve(nums):
   if len(nums) & 1:
      return False
   nums.sort()
   for i in range(1, len(nums)):
      if nums[i] == nums[i - 1]:
         nums[i] = nums[i - 1] = 0
   return sum(nums) == 0

nums = [8, 9, 9, 8, 5, 5]
print(solve(nums))

อินพุต

[8, 9, 9, 8, 5, 5]

ผลลัพธ์

True