الدالة heapq.heappushpop()‎ في بايثون

من موسوعة حسوب
< Python‏ | heapq
مراجعة 12:29، 6 أغسطس 2018 بواسطة Mohammed Taher (نقاش | مساهمات) (أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:الدالة <code>heapq.heappushpop()‎</code> في بايثون}}</noinclude> تحذف الدالة وتعيد أصغر عنصر في ال...')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)


تحذف الدالة وتعيد أصغر عنصر في الكومة مع الحفاظ على ثبات الكومة.

البنية العامة

heapq.heappushpop(heap, item)

المعاملات

heap

اسم الكومة التي ستجرى عليها عمليتا الإضافة والحذف.

item

العنصر الذي سيُضاف إلى الكومة.

القيمة المعادة

تضيف الدالة العنصر item إلى الكومة، ثم تحذف وتعيد أصغر عنصر في الكومة heap.

تؤدي هذه الدالة عملها منفردة بكفاءة أكبر من استدعاء الدالة heappush()‎ ثم الدالة heappop()‎ على التوالي.

أمثلة

يبين المثال التالي آلية عمل التابع:

>>> import heapq
>>> li = [5, 7, 9, 1, 3]
>>> heapq.heapify(li)
>>> print(list(li))
[1, 3, 9, 7, 5]
>>> heapq.heappushpop(li, 4)
1
>>> print(list(li))
[3, 4, 9, 7, 5]

انظر أيضًا

  • الدالة heappush()‎: تدرج الدالة القيمة المعطاة في الكومة، مع الحفاظ على ثبات الكومة.
  • الدالة heappop()‎: تحذف الدالة وتعيد أصغر عنصر في الكومة، مع الحفاظ على ثبات الكومة.

مصادر

صفحة General calendar-related functions في توثيق بايثون الرسمي.