日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

[LeetCode] Permutations 解题报告

發布時間:2024/1/17 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [LeetCode] Permutations 解题报告 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

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].? Solve this problem
[解題思路]
遞歸,用標志位記錄已使用數字。

[Code]
1: vector<vector<int> > permute(vector<int> &num) {
2: // Start typing your C/C++ solution below
3: // DO NOT write int main() function
4: vector<vector<int> > coll;
5: vector<int> solution;
6: if(num.size() ==0) return coll;
7: vector<int> visited(num.size(), 0);
8: GeneratePermute(num, 0, visited, solution, coll);
9: return coll;
10: }
11: void GeneratePermute(vector<int> & num, int step, vector<int>& visited, vector<int>& solution, vector<vector<int> >& coll)
12: {
13: if(step == num.size())
14: {
15: coll.push_back(solution);
16: return;
17: }
18: for(int i =0; i< num.size(); i++)
19: {
20: if(visited[i] == 0)
21: {
22: visited[i] = 1;
23: solution.push_back(num[i]);
24: GeneratePermute(num, step+1, visited, solution, coll);
25: solution.pop_back();
26: visited[i] =0;
27: }
28: }
29: }





轉載于:https://www.cnblogs.com/codingtmd/archive/2012/12/30/5078978.html

總結

以上是生活随笔為你收集整理的[LeetCode] Permutations 解题报告的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。