Menu
CoddyTech
flag Ar iconالعربيةdown icon

Kth Largest Element in an Array

لديك مصفوفة من الأعداد الصحيحة nums وعدد صحيح k. أَعِد القيمة الأكبر رقم k في nums: القيمة في الموضع k، عند العد بدءًا من 1، بعد ترتيب المصفوفة من الأكبر إلى الأصغر.

تُحتسب القيم المتساوية كلٌّ على حدة. في [5, 5, 1] تكون أكبر قيمة هي 5، وثاني أكبر قيمة هي أيضًا 5.

الدالة

findKthLargest(nums: integer-array, k: integer) → integer
numsinteger-array
القيم المطلوب ترتيبها
kinteger
أيّ أكبر قيمة تُعاد، و1 تعني الأكبر
تُرجعinteger
القيمة الأكبر رقم k، مع احتساب القيم المكررة

القيود

  • 1 ≤ k ≤ nums.length ≤ 104
  • -104 ≤ nums[i] ≤ 104
  • تُعَدّ القيم المتساوية قيمًا منفصلة.

أمثلة

المدخلات
nums = [7, 2, 9, 4, 9, 1]k = 2
المخرجات
9
الشرح
من الأكبر إلى الأصغر، القيم هي 9, 9, 7, 4, 2, 1. يُحتسب العددان 9 كلٌّ على حدة، لذا فإن ثاني أكبر قيمة هي 9، وليست 7.

lock icon+15 اختبارات مخفية عند الإرسال

challenge icon

سؤال إضافي

تصل القيم الآن واحدة تلو الأخرى. هل يمكنك الإبلاغ عن وسيط جميع القيم التي وصلت حتى الآن بعد كل وصول، في زمن O(log n) لكل قيمة؟

إعادة ضبط الشيفرة
def findKthLargest(nums, k):
    # اكتب الكود هنا
حالات الاختبار

الحالة 1

الحالة 2

الحالة 3

المدخلات

nums = [7, 2, 9, 4, 9, 1]
k = 2

المتوقع

9