자바 전체 배열 출력 알고리즘, 실행 효율 대비

자바 전체 배열 출력 알고리즘, 예 를 들 어 "ABCD"전체 배열:
ABCD ABDC ACBD ACDB ADBC ADCB BACD BADC BCAD BCDA BDAC BDCA CABD CADB CBAD CBDA CDAB CDBA DABC DACB DBAC DBCA DCAB DCBA 
두 가지 사고방식 을 시험 해 보 자.
1. 코드 가 흐리멍덩 해 보이 는데 한 걸음 한 걸음 너무 골 치 아파 요.
사고방식: ABCD 를 예 로 들 면 먼저 A 를 꺼 낸 다음 에 BCD 를 배열 한 다음 에 B 를 꺼 내 서 CD 를 배열 하여 ABCD, ABDC 를 얻는다.
한 명 씩 내 려 가서........................................................
4. 567913. 2.
import java.util.Date;
/**
 *        
 * @author yx
 *
 * 2017-6-30
 */
public class Test2 {
	public static void main(String[] args) {
		Date d1 = new Date();
		String str = "ABCD";
		new Test2().printStr(str);
		Date d2 = new Date();
        System.out.println(d2.getTime() - d1.getTime());
	}
	
	public void printStr(String str) {  
	    int len = str.length();  
	    for (int i=0; i

방법 은 중복 되 는 것 을 배제 할 수 없다. 예 를 들 어 'ABCDA' 는 중복 되 는 상황 이 발생 할 수 있다.  
방법 2 는 이런 상황 을 배제 할 수 있다.
방법 2 의 실행 효율 은 방법 1 보다 못 하 다. 문자열 의 길이 가 7, 8 일 때 방법 1 의 속 도 는 방법 2 의 4 배 정도 이다.

좋은 웹페이지 즐겨찾기