バックトラック----サブセット

無反復整数配列要素の組所与  NUMSをすべての可能なサブセット(パワー設定)の配列を返し、。

説明:ソリューションセットの重複サブセットを含めることはできません。

例:

入力:NUMS = [1,2,3]
出力:
[
  [3]
  [1]
  [2]
  [1,2,3]
  [1,3]
  [2,3]
  [1,2]
  []
] 

回答(C ++):
クラスのソリューション{
 パブリック
    ベクトル <ベクトル< int型 >> VEC。
    ボイドバックトレース(ベクター< INT >&NUMS、ベクトル< INT >アイテム、int型のPOS){
        vec.push_back(アイテム)
        INT I = POS; I <nums.size(); ++ i)が{
            item.push_back(NUMS [I])。
            バックトレース(NUMS、アイテム、I + 1 )。
            item.pop_back();
        }
    }
    
    ベクター <ベクトル< INT >>サブセット(ベクトル< INT >&NUMS){
        バックトレース(NUMS、{}、0 );
        リターンVEC;
    }
}。

 

おすすめ

転載: www.cnblogs.com/vczf/p/12610548.html