亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

【力扣】47. 全排列 II

blastz / 3177人閱讀

摘要:題目給定一個(gè)可包含重復(fù)數(shù)字的序列,按任意順序返回所有不重復(fù)的全排列。示例輸入輸出示例輸入輸出提示答案回溯法使用數(shù)組判斷是否訪問過,排序后跳過與前一個(gè)相同的

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

示例 1:

輸入:nums = [1,1,2]
輸出:
[[1,1,2],
[1,2,1],
[2,1,1]]

示例 2:

輸入:nums = [1,2,3]
輸出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]

提示:

1 <= nums.length <= 8
-10 <= nums[i] <= 10

答案:

class Solution {    List<List<Integer>> lists;    public List<List<Integer>> permuteUnique(int[] nums) {        //回溯法,使用數(shù)組判斷是否訪問過,排序后跳過與前一個(gè)相同的        boolean[] visited = new boolean[9];        lists = new ArrayList<>();        List<Integer> list = new ArrayList<>();        Arrays.sort(nums);        backTrace(list, nums, visited);        return lists;    }    public void backTrace(List<Integer> list, int[] nums, boolean[] visited){        if(list.size() == nums.length) lists.add(new ArrayList<>(list));        for(int i = 0; i < nums.length; i++){            if(i > 0 && nums[i] == nums[i - 1] && !visited[i - 1]) continue;            if(visited[i]) continue;            visited[i] = true;            list.add(nums[i]);            backTrace(list, nums, visited);            list.remove(list.size() - 1);            visited[i] = false;        }    }}

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/123183.html

相關(guān)文章

  • 力扣(LeetCode)47

    摘要:示例輸入輸出解答這一題可以利用求下一個(gè)排列算法來求解,對(duì)原數(shù)組排序,然后加入一個(gè)結(jié)果,接著不斷求下一個(gè)排列,直到?jīng)]有下一個(gè)排列為止。而下一個(gè)排列的求解可以參考下一個(gè)排列代碼 題目地址:https://leetcode-cn.com/probl...題目描述:給定一個(gè)可包含重復(fù)數(shù)字的序列,返回所有不重復(fù)的全排列。 示例: 輸入: [1,1,2]輸出:[ [1,1,2], [1,2,1...

    NusterCache 評(píng)論0 收藏0
  • leetcode 47 Permutations II

    摘要:題目詳情題目要求輸入一個(gè)可能會(huì)有重復(fù)數(shù)字的數(shù)組,要求我們輸出可能組成的全排列無重復(fù)排列??梢杂脕韺?shí)現(xiàn),但這種實(shí)現(xiàn)方式復(fù)雜度高。另外一種實(shí)現(xiàn)思路是,新聲明一個(gè)數(shù)組來存儲(chǔ)中元素的使用狀況。以這個(gè)數(shù)組為例。 題目詳情 Given a collection of numbers that might contain duplicates, return all possible unique ...

    Cobub 評(píng)論0 收藏0
  • 6-9月技術(shù)文章匯總

    摘要:分布式的管理和當(dāng)我在談?wù)摷軜?gòu)時(shí)我在談啥狀態(tài)碼詳解無狀態(tài)協(xié)議和請(qǐng)求支持哪些方法分層協(xié)議棧有哪些數(shù)據(jù)結(jié)構(gòu)運(yùn)用場(chǎng)景說說你常用的命令為什么要有包裝類面向?qū)ο蟮奶卣魇巧妒巧队惺裁春锰幭到y(tǒng)設(shè)計(jì)工程在線診斷系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)索引背后的數(shù)據(jù)結(jié)構(gòu)及算法原理軟技能 HTTP 【HTTP】分布式session的管理 【HTTP】Cookie和Session 【HTTP】當(dāng)我在談?wù)揜estFul架構(gòu)時(shí)我在談啥?...

    miya 評(píng)論0 收藏0
  • 力扣(LeetCode)46

    摘要:題目地址題目描述給定一個(gè)沒有重復(fù)數(shù)字的序列,返回其所有可能的全排列。 題目地址:https://leetcode-cn.com/probl...題目描述:給定一個(gè)沒有重復(fù)數(shù)字的序列,返回其所有可能的全排列。 示例: 輸入: [1,2,3]輸出:[ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]]解答:利用遞歸,我們可...

    李增田 評(píng)論0 收藏0
  • 力扣(LeetCode)756

    摘要:題目地址題目描述給出集合,其所有元素共有種排列。說明給定的范圍是。第二種是回溯法求全排列,設(shè)置一個(gè)全局變量為當(dāng)前求出的排列數(shù),求出第個(gè)全排列,也就是時(shí),停止所有遞歸否則會(huì)超時(shí)。 題目地址:https://leetcode-cn.com/probl...題目描述:給出集合 [1,2,3,…,n],其所有元素共有 n! 種排列。 按大小順序列出所有排列情況,并一一標(biāo)記,當(dāng) n = 3 時(shí),...

    Keven 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<