Given a collection of numbers, return all possible permutations.
For example,
[1,2,3]
have the following permutations:[1,2,3]
, [1,3,2]
, [2,1,3]
, [2,3,1]
, [3,1,2]
, and [3,2,1]
.
class Solution {public: vector> permute(vector &num) { // Start typing your C/C++ solution below // DO NOT write int main() function vector > rel; int level = 0; permuteRec( rel, num, level); return rel; } private: void permuteRec( vector > & rel, vector &num, int level) { if( level == num.size() ) { rel.push_back( num ); return; } for( int i=level; i