मध्यम 0 हल किए गए 0% स्वीकृति

K-th Smallest Element

Find the k-th smallest value without fully sorting.

समस्या

Return the k-th smallest value of the list (k counts from 1). Quickselect finds it in average O(n) time without sorting everything.

Implement kth_smallest(numbers, k).

Input

numbers: The list of integers. k: Which smallest value to return, starting at 1.

Output

Return the k-th smallest value.

सीमाएँ

1 ≤ k ≤ length ≤ 200,000

उदाहरण

उदाहरण 1
इनपुट:
k = 3
numbers = [7, 10, 4, 3, 20, 15]

अपेक्षित आउटपुट:
expected = 7
इनपुट:
long long k = 3;
std::vector<long long> numbers = {7, 10, 4, 3, 20, 15};

अपेक्षित आउटपुट:
long long expected = 7;
इनपुट:
long k = 3;
long[] numbers = new long[] {7, 10, 4, 3, 20, 15};

अपेक्षित आउटपुट:
long expected = 7;

व्याख्या

Sorted: 3, 4, 7, 10, 15, 20; the 3rd smallest is 7.

उदाहरण 2
इनपुट:
k = 2
numbers = [5, 5, 1]

अपेक्षित आउटपुट:
expected = 5
इनपुट:
long long k = 2;
std::vector<long long> numbers = {5, 5, 1};

अपेक्षित आउटपुट:
long long expected = 5;
इनपुट:
long k = 2;
long[] numbers = new long[] {5, 5, 1};

अपेक्षित आउटपुट:
long expected = 5;

व्याख्या

Sorted: 1, 5, 5; the 2nd smallest is 5 (duplicates count).

संदर्भ

यह चुनौती CodeUtility के लिए अनुकूलित की गई है। ऊपर दिए गए स्टेटमेंट और सीमाओं का पालन करें।

दूसरों से सीखें

समुदाय समाधान

अभी तक कोई प्रकाशित समाधान नहीं। पहला साझा करने के लिए इस चुनौती को हल करें।