순열

svv_vvs·2022년 9월 2일
0

순열

순열의 정의


순열이란 서로 다른 n개중에 r개를 선택하는 경우의 수를 의미합니다. (순서 상관 있음)

순열 코드(재귀)

import java.util.Arrays;

public class Permutation {

    public static void perm(int idx, int[] tmp, int[] arr)
    {
        if(idx==tmp.length)
        {
            System.out.println(Arrays.toString(tmp));
            return;
        }
        for(int i=0;i<arr.length;i++)
        {
            if(!visited[i])
            {
                visited[i]=true;
                tmp[idx]=arr[i];
                perm(idx+1,tmp,arr);
                visited[i]=false;
            }
        }
    }

    public static boolean visited[];
    public static void main(String[] args) {
        int arr[]={1,2,3,4};
        visited=new boolean[arr.length];
        perm(0,new int[3],arr);
    }
}
profile
안녕하세요. SW 개발자입니다.

0개의 댓글