<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # 使用 STL 的第 K 個最小/最大元素 > 原文: [https://www.geeksforgeeks.org/kth-smallestlargest-element-using-stl/](https://www.geeksforgeeks.org/kth-smallestlargest-element-using-stl/) 給定一個數組和一個數`k`(其中`k`小于數組的大小),我們需要找到給定數組中第`k`個最小的元素。 例子: ``` Input : arr[] = {7, 10, 4, 3, 20, 15} k = 2 Output : 4 Smallest element is 3\. Second smallest is 4. Input : arr[] = {7, 10, 4, 3, 3, 15} k = 2 Output : 4 Even if there are more than one occurrences of 3, answer should be 4. Input :arr[] = {7, 10, 4, 3, 20, 15} k = 4 Output : 10 ``` 我們使用在 C++ STL 中的集合。 1)將所有元素插入集合。 2)[遍歷設置并打印第`k`個元素。](https://www.geeksforgeeks.org/set-in-cpp-stl/) ``` // STL based C++ program to find k-th smallest // element. #include <bits/stdc++.h> using namespace std; int kthSmallest(int arr[], int n, int k) { ????// Insert all elements into the set ????set<int> s; ????for (int i = 0; i < n; i++) ????????s.insert(arr[i]); ????// Traverse set and print k-th element ????auto it = s.begin(); ????for (int i = 0; i < k - 1; i++) ????????it++; ????return *it; } int main() { ????int arr[] = { 12, 3, 5, 7, 3, 19 }; ????int n = sizeof(arr) / sizeof(arr[0]), k = 2; ????cout << "K'th smallest element is " ?????????<< kthSmallest(arr, n, k); ????return 0; } ``` 輸出: ``` K'th smallest element is 5 ``` 上述解決方案的時間復雜度為`O(N log N)`。 請注意,STL 中的`set`在內部使用自平衡 BST,因此搜索和插入操作的時間復雜度為`O(log n)`。 **相關文章**: [未排序數組中第`K`個最小/最大元素| 集合 1](https://www.geeksforgeeks.org/kth-smallestlargest-element-unsorted-array/) [未排序數組中第`K`個最小/最大元素| 集合 2(預期線性時間](https://www.geeksforgeeks.org/kth-smallestlargest-element-unsorted-array-set-2-expected-linear-time/) [未排序數組中第`K`個最小/最大元素|集合 3(最壞情況的線性時間)](https://www.geeksforgeeks.org/kth-smallestlargest-element-unsorted-array-set-3-worst-case-linear-time/)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看