中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

湖北做網(wǎng)站平臺(tái)哪家好百度 營銷怎么收費(fèi)

湖北做網(wǎng)站平臺(tái)哪家好,百度 營銷怎么收費(fèi),app界面設(shè)計(jì)欣賞網(wǎng)站,wordpress采集附件LeetCode-47 全排列Ⅱ 題目描述解題思路代碼說明 題目描述 給定一個(gè)可包含重復(fù)數(shù)字的序列 nums ,按任意順序 返回所有不重復(fù)的全排列。 示例 : 輸入:nums [1,1,2]輸出: [[1,1,2], [1,2,1], [2,1,1]] b站題目解讀講的不好&…

LeetCode-47 全排列Ⅱ

  • 題目描述
  • 解題思路
  • 代碼
  • 說明

題目描述

給定一個(gè)可包含重復(fù)數(shù)字的序列 nums ,按任意順序 返回所有不重復(fù)的全排列。

示例 :

  • 輸入:nums = [1,1,2]
  • 輸出:
    [[1,1,2],
    [1,2,1],
    [2,1,1]]
    b站題目解讀講的不好,勿噴

解題思路

首先選擇對(duì)原數(shù)組排序,保證相同的數(shù)字都相鄰,然后每次填入的數(shù)一定是這個(gè)數(shù)所在重復(fù)數(shù)集合中「從左往右第一個(gè)未被填過的數(shù)字」,即如下的判斷條件:

if (i > 0 && nums[i] == nums[i - 1] && used[i-1] == false) {continue;
}

即可實(shí)現(xiàn)樹層的去重。

  • 希望在計(jì)算的過程中進(jìn)行去重操作,所以我們對(duì)數(shù)組nums排序處理。

  • 如果nums[i] == nums[i-1]就說明該分支有可能是重復(fù)的。 但是這個(gè)相等條件有兩種可能:

  1. 一種是,1 1‘ 2,也就是選擇完1之后再選擇第二個(gè)1,兩個(gè)元素雖然重復(fù),但是第二個(gè)元素是前一個(gè)元素的下一層,這時(shí)是沒有問題的。
  2. 另一種是之前的 同層 分支已經(jīng)有 1 1‘ 2了,這次的選擇是 1‘ 1 2 。兩個(gè)元素重復(fù),且重的是同層路徑。那就說明是重復(fù)分支。

具體區(qū)分的辦法是 nums[i-1] 的used狀態(tài)是被選擇的,那么說明當(dāng)前的nums[i] 是 nums[i-1]的下一層路徑。 否則如果 nums[i-1] 的狀態(tài)是沒被選擇的,那么說明當(dāng)前 的nums[i] 是nums[i-1] 同層路徑。
Alt

代碼

class Solution {
public:
// [] 中的數(shù)字可以重復(fù),結(jié)果集的vector元素不能重復(fù)vector<vector<int>> permuteUnique(vector<int>& nums) {sort(nums.begin(), nums.end());vector<bool> used(nums.size(), false);back_tracking(nums, used);return res;}
private:vector<vector<int>> res;vector<int> path;void back_tracking(vector<int>& nums, vector<bool>& used) {if (path.size() == nums.size()) {res.push_back(path);return;} else {for (int i = 0; i < nums.size(); i++) {if (i > 0 && nums[i] == nums[i-1] && used[i-1] == false) continue;if (used[i] == false) {used[i] = true;path.push_back(nums[i]);back_tracking(nums, used);path.pop_back();used[i] = false;}}}} 
};

說明

去重最關(guān)鍵的代碼就是

if (i > 0 && nums[i] == nums[i - 1] && used[i - 1] == false) {continue;
}

而改成used[i-1]==true也正確

if (i > 0 && nums[i] == nums[i - 1] && used[i - 1] == true) {continue;
}

樹層上去重(used[i - 1] == false),的樹形結(jié)構(gòu)如下:
Alt樹枝上去重(used[i - 1] == true)的樹型結(jié)構(gòu)如下:
Alt

http://www.risenshineclean.com/news/36295.html

相關(guān)文章:

  • 百度公司做網(wǎng)站可靠嗎網(wǎng)頁設(shè)計(jì)培訓(xùn)
  • 網(wǎng)站開發(fā)的技術(shù)指標(biāo)企業(yè)網(wǎng)站建設(shè)規(guī)劃
  • 新鄭龍湖網(wǎng)站建設(shè)網(wǎng)絡(luò)營銷方法有哪些
  • wp網(wǎng)站如何做多級(jí)聯(lián)動(dòng)篩選框搜索關(guān)鍵詞排名一般按照什么收費(fèi)
  • 網(wǎng)站建設(shè)論文 網(wǎng)站建設(shè)論文單頁網(wǎng)站排名優(yōu)化
  • 軟件項(xiàng)目管理名詞解釋seo矩陣培訓(xùn)
  • vs網(wǎng)站開發(fā)效果圖手機(jī)免費(fèi)建網(wǎng)站
  • 北京微網(wǎng)站建設(shè)設(shè)計(jì)服務(wù)公司東莞網(wǎng)絡(luò)公司網(wǎng)絡(luò)推廣
  • 建設(shè)銀行網(wǎng)站首頁口關(guān)鍵詞優(yōu)化方法有什么步驟
  • 網(wǎng)站建設(shè)需要會(huì)什么軟件有哪些內(nèi)容seo網(wǎng)站推廣工作內(nèi)容
  • 免費(fèi)h5網(wǎng)站模版谷歌seo服務(wù)
  • 瑞安做網(wǎng)站百度云盤官網(wǎng)登錄入口
  • 成都建設(shè)工程交易中心網(wǎng)站深圳seo招聘
  • 扁平化企業(yè)網(wǎng)站媒體發(fā)布平臺(tái)
  • 廈門網(wǎng)站制作費(fèi)用怎么搭建屬于自己的網(wǎng)站
  • 服裝購物網(wǎng)站建設(shè)網(wǎng)絡(luò)營銷組織的概念
  • 如何制作一個(gè)官網(wǎng)sem優(yōu)化軟件選哪家
  • 開一個(gè)網(wǎng)站建設(shè)公司外鏈工具xg
  • 怎么給公司做微網(wǎng)站軟文關(guān)鍵詞排名推廣
  • 石家莊新聞網(wǎng)seo推廣服務(wù)哪家好
  • 站長工具seo綜合查詢排名怎么做關(guān)鍵詞排名靠前
  • 香港vps可看netflix東營seo網(wǎng)站推廣
  • 做電子商務(wù)系統(tǒng)網(wǎng)站建設(shè)怎么推廣產(chǎn)品最有效
  • 如何在百度上做網(wǎng)站品牌策劃書
  • 福州交通建設(shè)集團(tuán)官方網(wǎng)站軟文營銷寫作技巧
  • 建設(shè)工程施工合同條例湖北搜索引擎優(yōu)化
  • 織夢映像網(wǎng)絡(luò)推廣seo怎么弄
  • 企業(yè) 網(wǎng)站 程序愛站網(wǎng)關(guān)鍵詞查詢
  • 如何用vps做網(wǎng)站中央新聞
  • 網(wǎng)站如何制作浙江技能培訓(xùn)班