1. K番目に大きいものを見つけるタイトル順序付けられていない整数配列があります。ソートの考え方に基づいて、配列内の K 番目に大きい数値を見つけてください。 整数配列 a が与えられた場合、K 番目 (1<=K<=n) の最大の数値 (重複要素を含むが、重複を削除する必要はない) を返し、答えが存在することを確認します。 例
2. 従来の考え方まず順序付けられていない配列をソートし、次に順序付けられた配列を検索します。どのソートアルゴリズムを選択するかは、まだ決まっていません。 まず、さまざまなソートアルゴリズムの複雑さと安定性を見てみましょう。 上記の比較を読んだ後、あなたはすでに自分の答えを頭の中で持っているかもしれません。 3. 問題解決のアイデア従来の考え方には 2 つのステップが必要です。
それで、この質問では、ソート処理中に目標値を決定できるのでしょうか? クイックソートのバイナリ特性を考慮してください。
ここで知っておく必要があるのは、クイックソートでは、左側の値がそれ自体よりも小さく、右側の値がそれ自体よりも大きいということです。この値の位置は、最終的な順序付けられた配列内の位置であり、検索中にターゲットの位置を決定できることを意味します。さらに、この問題を処理する過程では、平均してデータ量の半分だけが処理されます。 アニメーション - クイックソートアルゴリズム クイックソートアルゴリズムの検索プロセス: 4. Goコードの実装
K 番目に大きい数値を見つけるには、配列をソートします。 最小の K を見つけるには、配列を昇順に並べます。 いずれにせよ、最初から始める方が簡単です。 |
<<: GitHub Copilot の盗作が確認されました! GitHub: 私たちの AI はコードを「暗唱」しません
[51CTO.com からのオリジナル記事] 7 年間の努力と見事な変貌。 2012年以降、6年連続...
[51CTO.com からのオリジナル記事] ナレッジ グラフは、インテリジェント マシンの脳を解き...
AI とハイパーオートメーションに期待するのには十分な理由があります。AI には、人間の思考や関連す...
編纂者 | Yan Zheng制作:51CTO テクノロジースタック(WeChat ID:blog)...
多くの企業が人工知能(AI)ファーストの戦略を目指しており、ビジネスプロセスの最適化に加えて、ビジネ...
私の家族の皆さん、人間として生きることが昨今こんなにも困難になっているとは誰が想像したでしょうか?最...
モデルとは何か一般人にとって、AIとそのプログラミングの基盤となるアルゴリズムが、これほど広範囲にわ...
静かに、アルパカファミリーの“最強バージョン”が登場! GPT-4と同等のコンテキスト長32,000...
1. Javaガベージコレクションアルゴリズムの核となる考え方Java 言語は、使用中のオブジェクト...
[[187490]] 2016 年末、Google DeepMind は機械学習プラットフォームであ...