ホームページ  >  記事  >  バックエンド開発  >  配列内の最後に指定された数の項目を取得する C++ プログラム

配列内の最後に指定された数の項目を取得する C++ プログラム

WBOY
WBOY転載
2023-08-26 22:05:10990ブラウズ

配列内の最後に指定された数の項目を取得する C++ プログラム

配列は、同じ種類のデータを一連のメモリ領域に保持するように特別に設計されたデータ構造です。配列を使用する主な利点は、インデックス パラメーターを使用して任意の位置から配列にアクセスできることです。ただし、データの挿入と削除には逐次操作が必要であり、このデータ構造は線形データ構造になります。角括弧内のインデックスまたは位置番号を使用するだけで、配列から要素を抽出できます。この記事では、C で配列から最も近い k の数値を読み取る方法を説明します。

概念を理解し、例で説明する

リーリー

すべての配列の配列内に要素があり、数量 n も重要です。数値 n は、配列内に有効な要素がいくつあるかを示します。配列のサイズは n と一致しない可能性があります。配列ですが最大 Z 個の要素を持つことができますが、そのうちの n 個だけが有効でなければなりません。残りのスロットは空です。この場合、配列から k 番目の要素を取得するには、k は n 以下である必要があります。コンポーネントを検査する必要があります。よりよく理解するために、アルゴリズムを見てみましょう。

###アルゴリズム###

    配列 A を入力として読み取ります。要素の数を同時に受け入れます: n と k、A
  • の最初の k 要素を読み取ります。

  • 空の配列 B
  • を作成します。

  • k

      i が 0 ~ k - 1 の範囲にある場合、
    • を実行します。

        B[ i ] = A[ n - k i ]
    • #終了

    終了 if
  • Bを返します
  • ###例### リーリー ###出力### リーリー

    ベクトルを使用する
上記のメソッドでは、静的配列を使用して配列要素を格納および取得します。同じ機能はベクターを使用して実現することもできます。ベクトルは C STL の一部であり、動的配列です。コードを見てみましょう。アルゴリズムは変更されません。

###例### リーリー ###出力### リーリー

ベクトルコンストラクターを使用する

最後の方法は、空のベクトルを手動で作成し、要素を 1 つずつコピーすることです。ただし、ベクトル反復子を直接使用して、ベクトル コンストラクター内の最後の k 要素をコピーできます。この概念を理解するためにコードを見てみましょう。

###例### リーリー ###出力### リーリー

ここでは、B ベクトルは A ベクトルの最後の k 要素を使用して作成されます。

begin()

メソッドを使用して最初の項目のアドレスを取得し、オフセット

begin()

(A.size() − k) をエンドポイントとして使用します。最後の k 要素をポイントします。

###結論###

この記事では、指定された配列から最後の n 個の数値を読み取りまたは選択する 3 つの異なる方法について説明します。 2 番目と 3 番目の解決策は、最初のアプローチで使用される静的なデフォルト配列ではなく、ベクトルに基づいています。最初の 2 つの質問に対する答えは簡単です。 for ループを使用して、最後の k 要素を 1 つずつコピーします。最後の手法は最も単純で、ベクトル コンストラクターを使用し、別のベクトルの反復子を使用してコンポーネントをコピーすることでベクトルを生成します。

以上が配列内の最後に指定された数の項目を取得する C++ プログラムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。