程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> [LeetCode]Permutations

[LeetCode]Permutations

編輯:C++入門知識

[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].

public class Solution {
	public List> permute(int[] num) {
		List list = new ArrayList<>();
		List> res = new ArrayList<>();
		List> lin = new ArrayList<>();
		if (num.length == 0) {
			res.add(list);
			return res;
		}
		int[] num2 = Arrays.copyOfRange(num, 0, num.length - 1);
		lin = permute(num2);
		for (int i = 0; i < lin.size(); i++) {
			list = lin.get(i);
			for (int j = 0; j <= list.size(); j++) {
				List linadd = new ArrayList<>(list);
				linadd.add(j, num[num.length - 1]);
				res.add(linadd);
			}
		}
		return res;
	}
}










  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved