C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

セットの指定されたサイズのすべてのサブセットをC++で出力します


この問題では、配列が与えられ、配列の要素を使用して形成できる、指定されたサイズrのすべてのサブセットを出力する必要があります。

トピックをよりよく理解するために例を見てみましょう-

Input:
array = {3, 5, 6}
r = 2
Output:
3 5
3 6
5 6

この問題では、配列の番号のすべての組み合わせを見つける必要があります。そして、すでにセットに含まれているrビットの組み合わせを除外します。

#include <iostream>
using namespace std;
void printSubset(int arr[], int n, int r, int index, int data[], int i);
int main(){
   int arr[] = {3 , 5, 6};
   int r = 2;
   cout<<"The sets are : ";
   int n = sizeof(arr) / sizeof(arr[0]);
   int data[r];
   printSubset(arr, n, r, 0, data, 0);
   return 0;
}
void printSubset(int arr[], int n, int r, int index, int data[], int i){
   if (index == r) {
      for (int j = 0; j < r; j++)
         cout<<data[j]<<" ";
      cout<<endl;
      return;
   }
   if (i >= n)
      return;
   data[index] = arr[i];
   printSubset(arr, n, r, index + 1, data, i + 1);
   printSubset(arr, n, r, index, data, i + 1);
}

出力

セットは-

3 5
3 6
5 6

  1. 特定のソースから宛先までのすべてのパスをC++で出力します

    この問題では、有向グラフが与えられ、グラフのソースから宛先までのすべてのパスを印刷する必要があります。 有向グラフ は、頂点aからbに向けられたエッジを持つグラフです。 問題を理解するために例を見てみましょう ソース=K宛先=P 出力: K -> T -> Y -> A -> P K -> T -> Y -> P K -> A -> P ここで、KからPへのパスを見つけました。パスをトラバースし、KからPに向かうすべてのパスを出力しました。 この問題を解決するために、深さ優先探索を使用してグラフをトラバースします。

  2. セットの特定のサイズのすべてのサブセットを取得するPythonプログラム

    この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 − 2つの整数が与えられているので、2つの数値の最大公約数を表示する必要があります ここでは、入力として受け取る2つの数値の最小値を計算しています。各値を1から計算された最小値まで除算して計算することにより、除数を計算するループ。 条件が真であると評価されるたびに、カウンターは1ずつ増加します。 それでは、以下の実装の概念を見てみましょう- 例 # built-in module import itertools def findsubsets(str_, n):    return