LeetCode-Permutations-解题报告

原创 2015年07月08日 21:07:48

原题链接 https://leetcode.com/problems/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]


求全排列。


我开始想到了c++算法库中的next_permutation,然后就是了一下 然后就ac了。(ps: 数组要先排序)。


当然也可以使用回溯法解决。


然后我就上网查了一下next_permutation的实现方法。

大家可以去看这个 http://www.cnblogs.com/devymex/archive/2010/08/17/1801122.html


还有一种方法就是使用逆康托展开,直接算出来。

我就偷懒不叙述了。


class Solution {
public:
    vector<vector<int> > permute(vector<int>& nums) {
		sort(nums.begin(), nums.end());
		vector<vector<int> >ans;
		ans.push_back(nums);
		while (next_permutation(nums.begin(), nums.end()))
			ans.push_back(nums);
		return ans;
	}
};


相关文章推荐

LeetCode 46. Permutations 解题报告

LeetCode 46. Permutations 解题报告

Leetcode # 46. Permutations 全排列 解题报告

1 解题思想这道题是全排列,做法很多,而且Leetcode上随后也会有更多的变种这道题的假设是:distinct ,不重复,所以是最简单的一个,问题解法有两种: 1、设立一个状态数组,标示是否选择了...
  • MebiuW
  • MebiuW
  • 2016年04月17日 23:49
  • 573

Leetcode #47. Permutations II 全排列2 解题报告

1 解题思想这道题,就是第二个去全排列了,我昨天也预告过了,没看过的先看下上一题的解法: Leetcode # 46. Permutations 全排列 解题报告这道题有什么不一样的么?上一道题的...
  • MebiuW
  • MebiuW
  • 2016年04月18日 23:39
  • 360

【LeetCode】Permutations II 解题报告

【题目】 Given a collection of numbers that might contain duplicates, return all possible unique permu...
  • ljiabin
  • ljiabin
  • 2014年12月17日 11:26
  • 1330

【LeetCode】Min Stack 解题报告

【题目】 Design a stack that supports push, pop, top, and retrieving the minimum element in constant t...
  • ljiabin
  • ljiabin
  • 2014年11月10日 16:17
  • 17634

【LeetCode】01 Matrix 解题报告

【LeetCode】01 Matrix 解题报告标签(空格分隔): LeetCode题目地址:https://leetcode.com/problems/01-matrix/#/description...

Leetcode 473. Matchsticks to Square 卖火柴的小女孩画框框 解题报告

1 解题思想这道题的意思就是卖火柴的小女孩有一堆长度不等的火柴,他希望拼成一个正方形,不知道可以不可以?所谓可以就是: 1、用了所有火柴,一根不多,一根不少,当然一根用一次 2、四条边长度一样所以...
  • MebiuW
  • MebiuW
  • 2016年12月19日 19:27
  • 2938

Leetcode #61. Rotate List 循环位移链表 解题报告

1 解题思想题目的意思是如果有一个链表,现在让你循环向右位移K步,得到一个新的开头的链表,例子可以看原题的实例。首先有一个你要明白的是,向右移动的K步,可能会大于链表的长度N,于是乎你需要这么做:1、...
  • MebiuW
  • MebiuW
  • 2016年05月01日 23:32
  • 1191

leetCode解题报告5道题(三)

5道题目分别是:【Binary Tree Zigzag Level Order Traversal】、【Convert Sorted Array to Binary Search Tree和Conve...

【LeetCode】Majority Element 解题报告

Majority Element[LeetCode]https://leetcode.com/problems/majority-element/Total Accepted: 110538 Tota...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:LeetCode-Permutations-解题报告
举报原因:
原因补充:

(最多只允许输入30个字)