国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

LintCode 16 帶重復(fù)元素的排列

2019-11-08 02:45:45
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

題目:permuteUnique


要求:

給出一個(gè)具有重復(fù)數(shù)字的列表,找出列表所有不同的排列。

樣例:

給出列表 [1,2,2],不同的排列有:[ [1,2,2], [2,1,2], [2,2,1]]

算法要求:

使用遞歸和非遞歸分別完成該題。

解題思路:

我是直接在全排列基礎(chǔ)上改的。

算法如下:

vector<vector<int> > mainVec; int size; void permute(vector<int> &nums, int m) { int temp; if (m == nums.size()) { for (int i = 0; i < size; i++) { if (mainVec[i] == nums) { return; } } size++; mainVec.push_back(nums); } else { for (int i = m; i < nums.size(); i++) { temp = nums[m]; nums[m] = nums[i]; nums[i] = temp; permute(nums, m+1); temp = nums[m]; nums[m] = nums[i]; nums[i] = temp; } } } vector<vector<int> > permuteUnique(vector<int> nums) { mainVec.clear(); size = 0; permute(nums, 0); return mainVec; }
上一篇:表格標(biāo)簽

下一篇:通讀cheerio API

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 亳州市| 垦利县| 宜州市| 红原县| 永昌县| 天全县| 鄂州市| 土默特左旗| 布尔津县| 金寨县| 高安市| 通城县| 商水县| 阆中市| 惠州市| 济南市| 吐鲁番市| 宁南县| 滕州市| 合水县| 武川县| 龙口市| 霸州市| 威信县| 家居| 汤原县| 达州市| 定西市| 彭山县| 荣昌县| 蒙山县| 类乌齐县| 荔浦县| 鹤壁市| 张家口市| 中西区| 隆德县| 苏州市| 吉安市| 上高县| 任丘市|