線形外挿を実装するためのC++プログラム
このチュートリアルでは、線形外挿を実装するプログラムについて説明します。
外挿は、特定の関数に必要な値が関数定義の下限または上限を超えるプロセスとして定義されます。
線形外挿の場合、スコープを超える値は、関数のグラフで作成された接線を使用して検出され、必要な値が決定されます。線形外挿を適用すると、非常に正確な結果が得られます。
例
#include <bits/stdc++.h> using namespace std; //structuring the values of x and y struct Data { double x, y; }; //calculating the linear extrapolation double calc_extrapolate(Data d[], double x){ double y; y = d[0].y + (x - d[0].x) / (d[1].x - d[0].x) * (d[1].y - d[0].y); return y; } int main(){ Data d[] = { { 1.2, 2.7 }, { 1.4, 3.1 } }; double x = 2.1; cout << "Value of y (x = 2.1) : " << calc_extrapolate(d, x) << endl; return 0; }
出力
Value of y (x = 2.1) : 4.5
-
隣接行列を実装するためのC++プログラム
グラフの隣接行列は、サイズV x Vの正方行列です。VはグラフGの頂点の数です。この行列では、各辺にV個の頂点がマークされています。グラフにiからjの頂点までのエッジがある場合、i thの隣接行列に 行とjth 列は1(または加重グラフの場合はゼロ以外の値)になります。それ以外の場合、その場所は0を保持します。 隣接行列表現の複雑さ: 隣接行列表現は、計算中にO(V2)のスペースを取ります。グラフに最大数のエッジと最小数のエッジがある場合、どちらの場合も必要なスペースは同じになります。 入力: 出力: 0 1 2 3 4
-
隣接リストを実装するC++プログラム
グラフの隣接リスト表現は、リンクリスト表現です。この表現では、リストの配列があります。配列のサイズはVです。ここで、Vは頂点の数です。つまり、V個の異なるリストを格納する配列があると言えます。リストヘッダーが頂点uの場合、uの隣接するすべての頂点を保持することを意味します。 隣接リスト表現の複雑さ この表現は、無向グラフの場合はO(V + 2E)を取り、有向グラフの場合はO(V + E)を取ります。エッジの数を増やすと、必要なスペースも増えます。 入力 : 出力 : アルゴリズム add_edge(adj_list、u、v) 入力 :エッジ{u、v}のuとv、およ