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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

全排列 leetcode java_LeetCode--046--全排列(java)

發布時間:2025/5/22 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 全排列 leetcode java_LeetCode--046--全排列(java) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

給定一個沒有重復數字的序列,返回其所有可能的全排列。

示例:

輸入: [1,2,3]

輸出:

[

[1,2,3],

[1,3,2],

[2,1,3],

[2,3,1],

[3,1,2],

[3,2,1]

]

無奈,用swap的方法從左向右滑動,直到最后結果和最初的一致停止,只適用于三位數。。。。(改進一下讓每個數字作為第一位后面的進行滑動,應該可以pass,放棄)

錯:

1 classSolution {2 public static void swap(int[] nums_,int a,intb){3 int temp =nums_[a];4 nums_[a] =nums_[b];5 nums_[b] =temp;6 }7 public static boolean isEqual(int[] a,int[] b){8 for(int i = 0;i < a.length;i++){9 if(a[i] != b[i])return false;10 }11 return true;12 }13 public List> permute(int[] nums) {14 List> res = newArrayList();15 List lists = newArrayList();16 if(nums.length < 2){17 lists.add(nums[0]);18 res.add(lists);19 returnres;20 }21 int[] nums_ = new int[nums.length];22 for(int k = 0;k < nums.length;k++){23 nums_[k] =nums[k];24 lists.add(nums[k]);25

26 }27 res.add(newArrayList(lists));28 lists.removeAll(lists);29 swap(nums_,0,1);30 for(int j = 0;j < nums.length;j++){31 lists.add(nums_[j]);32 }33 res.add(newArrayList(lists));34 int i = 1;35 while(!isEqual(nums,nums_)){36 if(i+1

53 }

正確做法bt: ?添加順序就是[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]

[[1, 2, 3, 4], [1, 2, 4, 3], [1, 3, 2, 4], [1, 3, 4, 2], [1, 4, 2, 3], [1, 4, 3, 2],

[2, 1, 3, 4], [2, 1, 4, 3], [2, 3, 1, 4], [2, 3, 4, 1], [2, 4, 1, 3], [2, 4, 3, 1],

[3, 1, 2, 4], [3, 1, 4, 2], [3, 2, 1, 4], [3, 2, 4, 1], [3, 4, 1, 2], [3, 4, 2, 1],

[4, 1, 2, 3], [4, 1, 3, 2], [4, 2, 1, 3], [4, 2, 3, 1], [4, 3, 1, 2], [4, 3, 2, 1]]

TIME:O(N!*N)(整體來說)

SPACE:O(N)

1 classSolution {2

3 public List> permute(int[] nums) {4 List> res = new ArrayList<>();5 if(nums== null || nums.length ==0)returnres;6 helper(res,new ArrayList<>(),nums);7 returnres;8 }9 public void helper(List> res,List list,int[] nums){10 if(list.size() ==nums.length){11 res.add(new ArrayList<>(list));12 return;13 }14 for(int i = 0;i < nums.length;i++){15 if(list.contains(nums[i]))continue;//contaisn的時間復雜度為O(N)16 list.add(nums[i]);17 helper(res,list,nums);18 list.remove(list.size()-1);19 }20 }21

22 }

如果遞歸符合T(n) = T(n-1)+T(n-2)+....T(1)+T(0) ?時間復雜度基本符合O(2^n),如果在其中的一些步驟可以省略,則可以簡化為O(n!)

對于方法1思想的完善:

TIME:O(N)

SPACE:O(N)

1 classSolution {2

3 public List> permute(int[] nums) {4 List> res = new ArrayList<>();5 if(nums.length == 0 || nums == null)returnres;6 helper(res,0,nums);7 returnres;8 }9 public void helper(List> res,int start,int[] nums){10 if(start ==nums.length){11 List list = new ArrayList<>();12 for(intq:nums){13 list.add(q);14 }15 res.add(new ArrayList<>(list));16 return;17 }18 for(int i = start;i < nums.length;i++){19 swap(nums,start,i);20 helper(res,start+1,nums);21 swap(nums,start,i);22 }23

24 }25 public void swap(int[] nums,int l,intm){26 int temp =nums[l];27 nums[l] =nums[m];28 nums[m] =temp;29 }30

31 }

2019-05-04?10:45:10

總結

以上是生活随笔為你收集整理的全排列 leetcode java_LeetCode--046--全排列(java)的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 波多野结衣一区二区三区在线 | 国产大学生自拍视频 | 成人欧美一区二区三区黑人免费 | 老司机伊人 | 又黄又色又爽的视频 | 欧美片17c07.com | 欧美日韩国产黄色 | 手机在线观看免费av | 公车乳尖揉捏酥软呻吟 | 欧美国产片 | 日本三级中文字幕在线观看 | 视频一区二区三区在线观看 | 日本欧美在线 | 一区二区视屏 | 日韩黄色在线视频 | 爽插 | 国产免费一区二区三区网站免费 | 国产视频69 | 日韩欧美高清一区 | 国产在线二区 | 不卡av免费观看 | 777欧美| 国内外成人在线视频 | 欧美精品在线免费观看 | 久久免费看片 | 欧美色图激情小说 | 国产日韩欧美亚洲 | 国产欧美精品在线观看 | 亚洲在线免费观看 | 最新色网址 | 久久精品男人的天堂 | 亚洲精品一线二线三线 | 国产又粗又猛又大爽 | 国产女大学生av | 久草视频在线免费播放 | 久久人人添人人爽添人人片 | 日韩综合区 | 国产污污在线观看 | 精品国产成人亚洲午夜福利 | 艳母日本动漫在线观看 | 免费福利视频网站 | 日本中文字幕网站 | 色偷偷伊人 | 91成人精品一区在线播放 | 久久久无码人妻精品无码 | 激情五月婷婷综合网 | 日韩三级一区二区三区 | 日韩精品一区二区免费视频 | 久久久久久久久久久影院 | 无码人妻精品一区二区三区蜜桃91 | 久久久久a | 93久久精品日日躁夜夜躁欧美 | 欧美丰满少妇人妻精品 | 香蕉一区二区三区四区 | 天堂综合 | 精品无码久久久久久久久 | 日本精品在线观看视频 | 成人午夜在线观看视频 | 手机在线成人av | 丰满少妇被猛烈进入一区二区 | 野战少妇38p | 国产一区一区 | 免费在线看黄的网站 | 国产v综合v亚洲欧美久久 | 一级色网站 | 精品一区二区在线视频 | 天天插天天 | 91精品国产91久久久久久久久久久久 | 91岛国| 久久va | 国产精品久久亚洲7777 | 9l蝌蚪porny中文自拍 | 被两个男人吃奶三p爽文 | 国产高潮久久久 | 久久男女视频 | 波多野结衣a级片 | 国产精品888 | 男人爆操女人 | 国产老熟女一区二区三区 | 欧美一区二区三区公司 | 国产经典自拍 | 九色av | 色午夜视频| www视频免费在线观看 | 国产免费一级片 | 青青国产 | 成熟人妻av无码专区 | 黄色美女大片 | 奇米色综合 | 午夜在线视频播放 | 青青伊人久久 | 国产一区二区精品 | 亚洲欧美经典 | 色97色 | 久久成人免费视频 | 少妇1~3伦理 | 日本人dh亚洲人ⅹxx | 在线只有精品 | 日本特级片 |