-
ユニオンがセットを作成するサブセットのすべてのペアを生成するC++プログラム
これは、サブセットのすべてのペアを生成するC ++プログラムであり、その和集合がセットを作成します。 アルゴリズム Begin function UnionSet(): Arguments: a[] = an array. n = number of elements. Body of the function: 1) Generate binary code from 0 t
-
2つの特定のノード間にパスが存在するかどうかを確認するC++プログラム
これは、指定された2つのノード間にパスが存在するかどうかを確認するC++プログラムです アルゴリズム Begin function isReach() is a recursive function to check whether d is reachable to s: A) Mark all the vertices as unvisited. B) Mark the current node as visited and enqueue it and it will be used to get all ad
-
支配集合問題を解決するためのC++プログラム
これは、支配集合問題を解決するためのC++プログラムです。 アルゴリズム Begin Take the number of vertices and edges as input. Also take the edge point of the edges. function dominant(): Declare vector Set. Take any edge e graph connecting the vertices i.e.; X and Y.
-
4色問題の実装を示すC++プログラム
これは、4色問題の実装を示すためのC++プログラムです。 アルゴリズム Begin Develop function issafe() to check if the current color assignment is safe for vertex v i.e. checks whether the edge exists or not. If it exists, then next check whether the color to be filled in th
-
ビジングの定理を実装するためのC++プログラム
ビジングの定理は、単純なグラフの色指数はmaxdegreeまたはmaxdegree+1のいずれかである可能性があると述べています。ここで、彩色指数とは、グラフのエッジの彩色に必要な最大の色を意味します。 これは、ビジングの定理を実装するためのC++プログラムです。 アルゴリズム Begin Take the number of vertices and edges as input. Take the vertex pair for the edges. function EdgeColor() : Color t
-
Treapを実装するC++プログラム
これはTreapを実装するためのC++プログラムです。 Treapデータ構造は、基本的にランダム化された二分探索木です。ここでは、これに対する挿入、削除、および検索操作について検討します。 機能と説明 左回転用の関数rotLeft() 最初にツリーを回転させてから、新しいルートを設定します。 右回転の関数rotRight() 最初にツリーを回転させてから、新しいルートを設定します。 関数insetNod() 再帰的に優先度を付けて特定のキーをtreapに挿入する- If root = nullptr return data as root
-
時間を12時間形式から24時間形式に変換するC++プログラム
これは、時間を12時間形式から24時間形式に変換するC++プログラムです。 アルゴリズム Begin In main(), If median = pm Check if entered hours is less than 12 Then add 12 to hours and print the time in 24 hours format. Check if entered hours
-
お誕生日おめでとうを印刷するC++プログラム
これは、お誕生日おめでとうを印刷するためのC++プログラムです。 アルゴリズム Begin Take a str1 which takes the next character of our desired ouput like for H it will be G. Assign the string to a pointer p. Make a while loop till *p != NULL. Go next character of the string prin
-
菱形を印刷するC++プログラム
これは、ひし形を印刷するためのC++プログラムです。 アルゴリズム Begin Take the no of rows n means the dimension of the diamond shape as input. Declare the variables i, j and initialize space=1. Initialize space = n-1. Run for loop till n. Run for loop to pr
-
特定の次数シーケンスに対してグラフを作成できるかどうかを確認するC++プログラム
与えられた次数の順序でグラフが作成される可能性をチェックするプログラムです。 入力 エッジと頂点は必要ありません。 出力 作成されたグラフのランダムな値が表示されます。 アルゴリズム Begin Declare a function RandomGraphs(). Declare NoEdge and NoVertex of the integer datatype and pass them as parameter. Declare i, j, e[NoEdge][2], c
-
トポロジカルソートを使用してグラフのサイクルをチェックするC++プログラム
有向非巡回グラフでは、トポロジカルソートを使用して頂点を線形順序でソートできます。 トポロジカルソートは、有向非巡回グラフでのみ機能します。有向非巡回グラフ(DAG)では、複数のトポロジカルソートが存在する可能性があります。 トポロジカルソートを実行してグラフのサイクルをチェックするC++プログラムを検討します。 例 アルゴリズム Topological Sort: Begin Declare topo_sort(int *v, int T_S[][5], int i) function a = new NodeIn
-
トポロジカルソートをグラフで実行できるかどうかを確認するC++プログラム
有向非巡回グラフでは、トポロジカルソートを使用して頂点を線形順序でソートできます。 トポロジカルソートは、有向非巡回グラフでのみ機能します。有向非巡回グラフ(DAG)では、複数のトポロジカルソートが存在する可能性があります。 次のC++プログラムでは、トポロジカルソートを実行して、グラフ内のサイクルの存在を確認します。 アルゴリズム 関数Topo_Sortの場合 Begin Define function Topo_Sort() Declare x to the integer datatype, vstd[] of th
-
グラフ内のすべての前方エッジを検索するC++プログラム
このセクションでは、グラフ内のすべての前縁を見つけるためのC++プログラムを検討します。 アルゴリズム 地形機能用 Begin Declare function topo() Declare pointer v, m[][5] and i of the integer datatype. x = new Node_Inf. x->n = i. x->S_Time = c. &n
-
スレッド化された二分木を実装するためのC++プログラム
スレッド化されたバイナリツリーは、特定の順序でツリーをトラバースする機能を提供するバイナリツリーです。 これにより、順序のないトラバーサルが高速になり、スタックや再帰なしで実行できます。スレッド化された二分木には2つのタイプがあります。 シングルスレッド 各ノードは、左または右のいずれかにスレッド化されます。つまり、先行または後続が順番に並んでいます。ここで、すべての右nullポインターは、順序の後続を指すか、すべての左nullポインターは、順序の先行を指します。 ダブルスレッド 各ノードは、左右どちらかにスレッド化されます。つまり、先行および後続が順番に並んでいます。ここで、すべての右
-
線と点の双対変換を示すC++プログラム
これは、線と点の双対変換を示すC++プログラムです。したがって、2つのケースが考えられます- ケース1: 点(a、b)は線(y =ax − b)に変換されます。 ケース2: 線D(y =cx + d)は点D’(c、−d)に変換されます。 関数と擬似コード Function LineTransformation(double c、double d) Print C: (d / c) D: (d * -1) 関数PointTransformation(double x、double y) Print a = (-1 * y / x) b = (-1 * y) 例 #include <i
-
与えられた3点のセットが1本の線上にあるかどうかをチェックするC++プログラム
これは、特定の3つのポイントのセットが1行にあるかどうかをチェックするC++プログラムです。この点によって形成される三角形の面積がゼロに等しい場合、3つの点が1本の線上にあります。 三角形の面積は-です 0.5 * (x1 * (y2 - y3) + x2 * (y3 - y1) + x3 * (y1 - y2)). アルゴリズム Begin Generate the points randomly. Calculate the area by using above formula. If area > 0
-
N-Queen問題を解決するためのC++プログラム
この問題は、チェス盤でN人の女王の配置を見つけて、女王がボード上の他の女王を攻撃できないようにすることです。 チェスの女王は、水平、垂直、水平、斜めの方法であらゆる方向に攻撃できます。 バイナリマトリックスは、クイーンが他のクイーンを攻撃できないNクイーンの位置を表示するために使用されます。ここでは、8つのクイーンの問題を解決します。 入力 チェス盤のサイズ。ここでは8です(8 x 8は通常のチェス盤のサイズです)。 出力 Nクイーンを配置できる行と列を表す行列。 ソリューションが存在しない場合は、falseが返されます。 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1
-
同じテキストを繰り返し検索するC++プログラム(データ構造を構築することによる聖書など)
これは、同じテキストを繰り返し検索するC++プログラムです。 アルゴリズム Begin Take the original string and pattern to be searched as input. org_len = store the length of original string pat_len = store the length of pattern for i = 0 to (org_len - pat_len) for
-
有限状態オートマトンベースの検索を実行するC++プログラム
これは、有限状態オートマトンベースの検索を実行するためのC++プログラムです。有限数の状態を持つオートマトンは、有限オートマトンと呼ばれます。ここでは、テキストにtext [0…t-1]が与えられ、パターンp [0...p-1]も与えられます。テキスト内のパターンを見つけて、それぞれのインデックスですべての出現箇所を印刷する必要があります。 アルゴリズム Begin Function void transitiontable(): 1) put the entries in first row and filled it up. All en
-
レーベンシュタイン距離計算アルゴリズムを実装するためのC++プログラム
2つの文字列間のレーベンシュタイン距離は、編集操作で1つの文字列を別の文字列に変換するために必要な編集の最小数を意味します。単一文字の挿入、削除、または置換。 例: 猫とマットの間のレーベンシュタイン距離は1-です cat mat(substitution of ‘c’ with ‘m’) これは、レーベンシュタイン距離計算アルゴリズムを実装するためのC++プログラムです。 アルゴリズム Begin Take the strings as input and also find their length.