الفرق بين المراجعتين لصفحة: «Python/bisect/insort left»
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:الدالة <code>bisect.insort_left()</code> في بايثون}}</noinclude> تدرج الدالة العنصر المحدّد في ال...' |
لا ملخص تعديل |
||
سطر 12: | سطر 12: | ||
يمكن استخدام المعاملين <code>lo</code> و <code>hi</code> لتحديد جزء من القائمة، ولكن السلوك الافتراضي لهذه الدالة هو التعامل مع القائمة بأكملها. | يمكن استخدام المعاملين <code>lo</code> و <code>hi</code> لتحديد جزء من القائمة، ولكن السلوك الافتراضي لهذه الدالة هو التعامل مع القائمة بأكملها. | ||
هذه الدالة مكافئة للتعبير a.insert(bisect.bisect_left(a, x, lo, hi), x) على فرض أنّ المصفوفة a مفروزة أصلًا. يجب الانتباه إلى أنّ عملية البحث ذات السرعة O(log n) تكون محكومة بعملية الإدراج البطيئة ذات السرعة O(n). | هذه الدالة مكافئة للتعبير <code>a.insert(bisect.bisect_left(a, x, lo, hi), x)</code> على فرض أنّ المصفوفة <code>a</code> مفروزة أصلًا. يجب الانتباه إلى أنّ عملية البحث ذات السرعة <code>O(log n)</code> تكون محكومة بعملية الإدراج البطيئة ذات السرعة <code>O(n)</code>. | ||
== أمثلة == | == أمثلة == |
المراجعة الحالية بتاريخ 20:36، 5 أغسطس 2018
تدرج الدالة العنصر المحدّد في المصفوفة المعطاة بترتيب مفروز.
البنية العامة
bisect.insort_left(a, x, lo=0, hi=len(a))
المعاملات
يمكن استخدام المعاملين lo
و hi
لتحديد جزء من القائمة، ولكن السلوك الافتراضي لهذه الدالة هو التعامل مع القائمة بأكملها.
هذه الدالة مكافئة للتعبير a.insert(bisect.bisect_left(a, x, lo, hi), x)
على فرض أنّ المصفوفة a
مفروزة أصلًا. يجب الانتباه إلى أنّ عملية البحث ذات السرعة O(log n)
تكون محكومة بعملية الإدراج البطيئة ذات السرعة O(n)
.
أمثلة
يبين المثال التالي آلية عمل التابع:
>>> import bisect
>>> l = [1, 3, 4, 4, 4, 6, 7]
>>> bisect.insort_left(l, 5)
>>> l
[1, 3, 4, 4, 4, 5, 6, 7]
انظر أيضًا
- الدالة
insort_right
(): تدرج العنصر المحدّد في المصفوفة المعطاة بعد العناصر المماثلة للعنصر المعطى والموجودة أصلًا في المصفوفة. - الدالة
insort
(): تدرج العنصر المحدّد في المصفوفة المعطاة بعد العناصر المماثلة للعنصر المعطى والموجودة أصلًا في المصفوفة.