カクテルソート用のC++プログラム?
カクテルソートは、安定したソートアルゴリズムであり、双方向バブルソート、カクテルシェーカーソート、シェーカーソート(選択ソートの変形を指すこともあります)、リップルソート、シャッフルソートとも呼ばれる比較ソートの両方であるバブルソートのバリエーションです。 、またはシャトルソート。アルゴリズムは、リストを通過するたびに両方向にソートされるという点で、バブルソートとは異なります。
Input:53421 Output:12345
説明
カクテルでは、並べ替え配列は並べ替えられていない要素で構成されます。カクテルソートは、リストを通過するたびに両方向で機能します。バブルソートを使用して配列を前後に1回ソートします。
例
#include <iostream> using namespace std; int main() { int arr[] = { 5, 3, 4, 2, 1 }; int m=5; int n, c; n=m; do { for (int i = 0; i < n - 1; i++) { if (arr[i] > arr[i + 1]) { arr[i] = arr[i] + arr[i + 1]; arr[i + 1] = arr[i] - arr[i + 1]; arr[i] = arr[i] - arr[i + 1]; } } n = n - 1; for (int i=m-1, c = 0; i >= c; i--) { if(arr[i] < arr[i - 1]) { arr[i] = arr[i] + arr[i - 1]; arr[i - 1] = arr[i] - arr[i - 1]; arr[i] = arr[i] - arr[i - 1]; } } c = c + 1; } while (n != 0 && c != 0); for (int i = 0; i < m; i++) { cout<< arr[i]<<"\t"; } }
-
二分法のためのC++プログラム
0であり、関数f(x)はaとbの間にある必要があります。つまりf(x)=[a、b ]。タスクは、二分法を使用して、関数f(x)の区間aとbの間にあるルートの値を見つけることです。 二分法とは何ですか? 二分法は、「a」と「b」で定義された指定された制限内の関数f(x)の根の値を見つけるために使用されます。関数の根は、f(a)=0となるような値aとして定義できます。 例 Quadratic equation F(x) = - 8 This equation is equals to 0 when the value of x will be 2 i.e. - 8 =
-
カクテルソート用のPythonプログラム
この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 −リストが与えられたので、与えられたリストに対してビットニックソートを実行し、リストを表示する必要があります シェーカーソート −ここでは、ソートはバブルソートのように行われ、反復は両方向で行われます。 アルゴリズム まず、配列が左から右にトラバースされます。トラバーサル中に、隣接するアイテムが比較され、条件に基づいて値が交換されます。これにより、最大数はアレイの最後になります。 これで、配列は反対方向にトラバースされ、条件に基づいて要素が交換されます。これにより、最小数が最初になります。 次に、以下