【java】全排列 枚举子集

全排列:

输入一个包含n个字符的字符串,输出该字符串的全排列。

样例输入:

abc

ab

样例输出:

abc
acb
bac
bca
cab
cba

ab
ba

import java.util.Scanner;
import java.util.Arrays;

public class Main {
	public static void permutation(char[]arr,char[] res,int[]visited,int cursor){
		if(cursor==arr.length){
			for(char c:res)
				System.out.print(c);
			System.out.println();
			return;
		}
		for(int i=0;i

枚举子集:

输入一个包含n个字符的字符串,输出该字符串的所有可能的子集。

样例输入:

abc

样例输出:


a
ab
abc
ac
b
bc
c

import java.util.Scanner;

public class Main {
	public static void subset(char[]arr,char[] res,int cursor,int index){
		for(int i=0;i

枚举子集的二进制算法:

import java.util.Scanner;

public class Main {
	public static void main(String[] args){
		Scanner scanner = new Scanner(System.in);
		while(scanner.hasNext())
		{
			String s=scanner.nextLine();
			char[] arr=s.toCharArray();
			int n=arr.length;
			for(int i=0;i<(1<



你可能感兴趣的:(基础算法)