C ++

 Computer >> コンピューター >  >> プログラミング >> C ++
  1. ポイント数に関するクエリは、C++の円の内側にあります

    この問題では、2D平面上にあるn個の点が与えられ、各座標は(x、y)です。私たちのタスクは2つの解決クエリです。クエリごとに、整数Rが与えられます。原点と半径Rで円の中心を取り、円の内側にある点の数を見つける必要があります。 問題の説明 クエリごとに、半径Rと中心点の原点(0、0)の円の内側(つまり円周の内側)にあるn個の点から点の総数を見つける必要があります。 問題をよりよく理解するために例を見てみましょう 入力 n = 4 2 1 1 2 3 3 -1 0 -2 -2 Query 1: 2 出力 1 説明 −このクエリでは、半径は2、点は-1 0で、円の内側にあり、他のすべては円の外側

  2. C++で指定されたサイズのバイナリサブ行列の数に関するクエリ

    この問題では、サイズnXmのバイナリ行列bin[][]が与えられます。私たちのタスクは、すべてのqクエリを解決することです。 query(x、y)の場合、配列yのすべての要素(2進数)となるようなサイズx*xの部分行列の数を見つける必要があります。 問題の説明 ここでは、2つのビットのうちの1つだけで構成される、特定のサイズのサブマトリックスの総数をカウントする必要があります。つまり、サブマトリックスはすべての要素を0/1にします。 問題を理解するために例を見てみましょう 入力 n = 3 , m = 4 bin[][] = {{ 1, 1, 0, 1} { 1, 1, 1, 0} { 0,

  3. C++でのパターン検索のためのAho-Corasickアルゴリズム

    この問題では、入力文字列と配列arr[]が与えられます。私たちのタスクは、文字列内の配列のすべての単語のすべての出現を見つけることです。このために、パターン検索にAho-Corasickアルゴリズムを使用します。 文字列とパターンの検索は、プログラミングにおいて重要なことです。また、プログラミングでは、アルゴリズムが優れているほど、より実用的な用途に使用できます。 Aho-Corasickアルゴリズム は文字列検索を簡単にする非常に重要で強力なアルゴリズムです 。これは一種の辞書照合アルゴリズムであり、すべての文字列を同時に照合します。アルゴリズムはTrieデータ構造を使用します その実装

  4. C++でのAlexanderBogomolnyの順序付けされていない順列アルゴリズム

    ここでは、番号Nが与えられています。私たちのタスクは、AlexanderBogomolnyのUnorderedPermutationAlgorithmを使用してNの無秩序な順列を見つけることです。 最初に順列について説明しましょう 順列 セット内のアイテムを一意に並べ替えることができる方法の数は、順列と呼ばれます。 例 − {4,9,2}の順列は、{4,9,2}、{4,2,9}、{9,4,2}、{9,2,4}、{2,4,9 }および{2,9,4}。 順列は、コンピュータネットワーク、並列処理でスイッチングネットワークを定義する際に使用され、さまざまな暗号化アルゴリズムでも使用されてい

  5. C++でのベッセルの補間

    補間は、既知の値の間にある未知の値の推定手法の一種です。 補間は、既知のデータポイントの離散セットの範囲の間に新しいデータポイントを構築するプロセスです。 補間を使用するアプリケーションまたは理由は、計算コストを削減できる可能性があるためです。特定の値を計算する式(関数)が複雑すぎたり、計算にコストがかかる場合は、補間を使用することをお勧めします。いくつかのデータポイントは元の関数を使用して計算され、残りは補間を使用して推定できます。これらは完全に正確ではないかもしれませんが、かなり近いです! したがって、基本的にここでは、計算コストの削減と単純さが、補間エラーによる損失を上回っています。

  6. C++の文字列の文字のアルファベット値の合計

    この問題では、文字列str[]の配列が与えられます。私たちのタスクは、配列内のすべての文字列のスコアを見つけることです。スコアは、文字列の位置と文字列の文字のアルファベット値の合計の積として定義されます。 問題を理解するために例を見てみましょう 入力 str[] = {“Learn”, “programming”, “tutorials”, “point” } 説明 「学ぶ」の位置-1→ sum = 12 + 5 + 1 + 18 + 14 = 50. Score = 50 「プログラミン

  7. C++のリンクリストの代替ノードの合計

    この問題では、リンクリストが表示されます。私たちのタスクは、リンクリストの代替ノードの合計を出力することです。 リンクリストは、リンクを介して相互に接続された一連のデータ構造です。 では、問題に戻りましょう。ここでは、リンクリストの代替ノードを追加します。これは、ノードが位置0、2、4、6、…であることを追加することを意味します 問題を理解するために例を見てみましょう。 入力 4 → 12 → 10 → 76 → 9 → 26 → 1 出力 24 説明 considering alternate strings

  8. C++で2からN/2までのすべての基数で書き込まれた数値Nの桁の合計

    この問題では、数値Nが与えられます。私たちのタスクは、2からN/2までの基数の数値Nの桁の合計を見つけるプログラムを作成することです。 したがって、数値の基数を2からN / 2までのすべての基数に変換する必要があります。つまり、n =9の場合、基数は2、3、4になります。そして、これらの基数のすべての桁の合計を求めます。 問題を理解するために例を見てみましょう 入力 N = 5 出力 2 説明 base from 2 to N/2 is 2. 52 = 101, sum of digits is 2. この問題を解決するために、2からN/2までのすべての数値をベースとします

  9. C++でarr[i]=i *(-1)^ iの場合、配列内のインデックスLからRまでの要素の合計

    この問題では、LとRの2つの数値が与えられます。 arr [i] =i *(-1)^iとなる配列arr[]もあります。 。私たちのタスクは、arr [i] =i *(-1)^ iの場合に、配列内のインデックスLからRまでの要素の合計を計算するプログラムを作成することです。 したがって、配列の範囲[L、R]内の要素の合計を見つける必要があります。 問題を理解するために例を見てみましょう 入力 L = 2 , R = 6 出力 4 説明 arr[] = {-1, 2, -3, 4, -5, 6} Sum = 2+ (-3) + 4 + (-5) + 6 = 4 この問題の簡単

  10. C++の無向グラフの連結成分すべての最小要素の合計

    この問題では、arr [i]が(i + 1)番目のノードを表すN個の数値の配列arrが与えられます。また、エッジのMペアがあり、uとvはエッジによって接続されたノードを表します。私たちのタスクは、無向グラフのすべての連結成分の最小要素の合計を見つけるプログラムを作成することです。ノードが他のノードに接続されていない場合は、1つのノードを持つコンポーネントとしてカウントします。 問題を理解するために例を見てみましょう 入力 arr[] = {2, 7, 5, 1, 2} m = 2 1 2 4 5 出力 8 説明 以下は上に描かれたグラフです- 2つの接続されたノードと1

  11. C++での順序どおりの完全なバイナリツリーのミラーイメージノードの合計

    この問題では、完全な二分木が与えられます。私たちのタスクは、完全な二分木の鏡像ノードの合計を順番に見つけるプログラムを作成することです。 ここでは、左側の太陽の木の順番の走査を見つける必要があります。次に、ノードごとに、それを使用して鏡像を追加します。これは、左側の葉ノードをトラバースする場合、右側の葉ノードの値を追加することを意味します。鏡像ノードなので。 いくつかの重要な定義 完全な二分木 は、最後のレベルを除くすべてのレベルのノード数が最も多い二分木です。 順序のないトラバーサル は、左側のサブツリーが最初に訪問され、ルートが訪問され、右側のサブツリーが訪問されるツリートラバーサル

  12. C++のNより下の2つの数値の倍数の合計

    この問題では、3つの整数M1、M2、およびNを指定しました。私たちのタスクは、Nの下の2つの数値の倍数の合計を見つけるプログラムを作成することです。 ここでは、M1またはM2の倍数であるNの下のすべての要素を追加します 問題を理解するために例を見てみましょう 入力 N = 13, M1 = 4, M2 = 6 出力 20 説明 − 13未満の4と6の倍数である数は、4、6、8、12です。 この問題の簡単な解決策は、1からNにループし、M1またはM2で除算できるすべての値を追加することです。 アルゴリズム ステップ1 − sum =0、i=0。i=1からNにループします。

  13. KのモジュロがC++でRを生成する自然数(最大N)の合計

    この問題では、N、K、Rの3つの数が与えられます。私たちのタスクは、Kを法とする自然数(Nまで)の合計を見つけるプログラムを作成することです。 Rを生成します。 次の条件を満たすN未満のすべての数値を加算します。i%K==R。 問題を理解するために例を見てみましょう 入力 N = 14, K = 4, R = 1 出力 28 説明 − N未満のすべての数値、4で割ったときに余りとして1が与えられる数値は、1、5、9、13です。 この問題を解決するために、RからNにループし、値をKずつインクリメントします。これにより、指定された条件を満たす偶数が得られます。そして、それらを合計

  14. C++の循環リンクリストのノードの合計

    この問題では、循環リンクリストが表示されます。私たちのタスクは、循環リンクリストのノードの合計を見つけるプログラムを作成することです。 リンクリストのすべてのノード値を追加するだけです。 いくつかの重要な定義 リンクリストは一連のデータ構造であり、リンクを介して相互に接続されています。 循環リンクリストは、最初の要素が最後の要素を指し、最後の要素が最初の要素を指すリンクリストのバリエーションです。単一リンクリストと二重リンクリストの両方を循環リンクリストにすることができます。 では、問題を理解するために例を見てみましょう。 入力 14 ->

  15. C++での循環キューデータ構造

    キューは、要素のコレクションを含む抽象的なデータ構造です。キューはFIFOメカニズムを実装します。つまり、最初に挿入された要素も最初に削除されます。 キュー杖は1つの線形データ構造です。ただし、配列を使用してキューを実装すると、問題が発生する可能性があります。挿入と削除を連続して行うと、前後の位置が変わる場合があります。その瞬間、キューには要素を挿入するスペースがないように見えます。空きスペースがあっても、論理的な問題により使用されません。この問題を解決するために、循環キューのデータ構造を使用します。 循環キューは、最後の位置が最初の位置に接続されて円を描くタイプのキューです。 例 #in

  16. C++でのデキューと優先キュー

    キューのデータ構造は先入れ先出しのデータ構造であることがわかっています。キューにもいくつかのバリエーションがあります。これらは、デキューと優先キューです。 デキューは基本的に両端キューです。したがって、2つのフロントペアと2つのリアペアがあります。フロントポインタとリアポインタの1つのペアは、キューを左側から説明するために使用され、もう1つは、キューを右側から説明するために使用されます。この構造の両側から要素を挿入または削除できます。ここでは、デキューSTLを使用してその機能を理解するC++コードをいくつか示します。 例(デキュー) #include <iostream> #in

  17. C++でソートされた配列

    ここでは、ソートされた配列のいくつかの基本的な概念を見ていきます。配列は同種のデータ構造であり、いくつかの連続するメモリ位置に同じ種類のデータを保持します。時々、それらを使用するために要素をソートする必要があります。それ以外に、ソートされた配列を作成できます。それは常にソートされます。 この場合、ソートされた配列に挿入および削除するためのアルゴリズムが表示されます。その中に要素を挿入すると、自動的にソートされた位置に配置されます。したがって、挿入後に再度ソートする必要はありません。削除すると、要素が削除され、右の要素をシフトして空のスペースが埋められます。ソートされた配列を使用しているため、

  18. Cの多次元配列

    ここに多次元配列が表示されます。配列は基本的に同種のデータのセットです。それらは連続したメモリ位置に配置されます。さまざまなケースで、配列が1次元ではないことがわかります。 2次元または多次元の形式で配列を作成する必要がある場合があります。 多次元配列は、2つの異なるアプローチで表すことができます。これらは行メジャーアプローチであり、もう1つは列メジャーアプローチです。 r行c列の2次元配列を考えてみましょう。配列内の要素の数はn=r*cです。 0≤i

  19. C++で二重にリンクされた循環リスト

    循環リンクリストは、最初の要素が最後の要素を指し、最後の要素が最初の要素を指すリンクリストのバリエーションです。単一リンクリストと二重リンクリストの両方を循環リンクリストにすることができます。 二重リンクリストでは、最後のノードの次のポインタが最初のノードを指し、最初のノードの前のポインタが最後のノードを指し、両方向に循環します。 上の図のように、考慮すべき重要なポイントは次のとおりです。 最後のリンクの次は、二重リンクリスト内のリストの最初のリンクを指します。 最初のリンクの前のポイントは、二重にリンクされたリストの最後を指します。 アルゴリズム displayFo

  20. C++でのスレッド化された二分木の順序のないトラバーサル

    ここでは、スレッド化された二分木データ構造を確認します。二分木ノードには最大で2つの子が存在する可能性があることがわかっています。ただし、子が1つしかない場合、または子がない場合、リンクリスト表現のリンク部分はnullのままになります。スレッド化された二分木表現を使用して、いくつかのスレッドを作成することにより、その空のリンクを再利用できます。 1つのノードに空いている左または右の子領域がある場合、それはスレッドとして使用されます。スレッド化された二分木には2つのタイプがあります。シングルスレッドツリーまたはフルスレッドバイナリツリー。 完全にスレッド化されたバイナリツリーの場合、各ノード

Total 5992 -コンピューター  FirstPage PreviousPage NextPage LastPage CurrentPage:203/300  20-コンピューター/Page Goto:1 197 198 199 200 201 202 203 204 205 206 207 208 209