"FBECGHD"와 같은 문자열이 있는데 MATLAB을 사용하고 필요한 모든 순열을 생성해야합니까? 거기에이 작업을 수행하는 특정 MATLAB 함수 또는이 작업을 수행하는 사용자 정의 MATLAB 함수를 정의해야합니까?MATLAB은 문자열에서 조합을 생성합니다.
1
A
답변
5
perms 기능을 사용하십시오. A는 N-문자열 인 경우, P는 N이고,
A = 'FBECGHD';
perms(A)
또한 출력 (예 : P = perms(A)
)를 저장할 수 있으며, : MATLAB에있는 문자열은 문자의 목록입니다, 그래서 그들을 뒤 바꿔드립니다! 각 행은 순열에 해당하는 -by-N 배열입니다. 당신은 고유의 순열에 관심이 있다면
, 당신은 사용할 수 있습니다
unique(perms(A), 'rows')
가 (대신 당신이 예상 3의 6 개 결과를 줄 것이다 'ABB'와 같은 다른 뭔가를) 중복을 제거 할 수 있습니다.
0
리차드가 대답 한대로 P = perms(A)
이 매우 편리합니다. P
은 char
유형이며 개별 순열을 부분 집합/선택하는 것은 편리하지 않습니다. 나를 위해 일한 아래 : unique(A)
는 것이다 그러나
>> A=[11, 11];
>> unique(A, 'rows')
ans =
11 11
: 내가 어떤하여 MATLAB 프로 아닙니다
>> unique(A)
ans =
11
str = 'FBECGHD';
A = perms(str);
B = cellstr(reshape(A,7,[])');
C = unique(B);
을 또한 unique(A, 'rows')
중복 값을 제거하지 않은 것 같습니다 의미와 나는 이것을 철저히 조사하지는 않았지만 최소한 어떤 경우에는 reshape
이 당신이 원하는 것이 아닌 것처럼 보입니다. 아래에 999
및 191
은 199
의 순열이 아니므로 이는 사실이 아닙니다. 작성된 모양 변경 기능은 "열이 많다는"A
에 작동 나타납니다 아래
>> str = '199';
A = perms(str);
B = cellstr(reshape(A,3,[])');
C = unique(B);
>> C
C =
'191'
'199'
'911'
'919'
'999'
는 생성하지 않습니다 999
또는 191
:
B = {};
index = 1;
while true
try
substring = A(index,:);
B{index}=substring;
index = index + 1;
catch
break
end
end
C = unique(B)
C =
'199' '919' '991'
관련 문제
- 1. 문자열에서 요약을 자동으로 생성합니다.
- 2. VB에서 모든 실제 조합을 생성합니다. VB.net
- 3. R - 두 개의 벡터에서 모든 조합을 생성합니다.
- 4. MATLAB은
- 5. MATLAB은
- 6. MATLAB은
- 7. jquery 문자열에서 선택기를 다시 생성합니다.
- 8. Ruby가 쿼리 문자열에서 객체를 생성합니다.
- 9. 문자열에서 동작에 대한 mvc 뷰를 생성합니다.
- 10. PHP는 주어진 길이의 가능한 모든 영숫자 조합을 생성합니다
- 11. 문자열에서 문자 조합을 생성하는 것이 완전히 작동하지 않는 이유는 무엇입니까?
- 12. 문자열에서 가능한 모든 조합을 나열하고 계산하는 방법은 무엇입니까?
- 13. Matlab은 루프를 동시에 실행합니다.
- 14. pinv는 DIFF 결과 - MATLAB은
- 15. matlab은 matfile에서 기능을 추출합니다.
- 16. MATLAB은 OpenCv CascadeClassifier를 사용합니까?
- 17. Matlab은 knnclassify를 어떻게 구현합니까?
- 18. Matlab은 루프를 제거합니다.
- 19. MATLAB은 중첩 된 루프를 벡터화합니다
- 20. Matlab은 interp1을 사용하여 색인을 찾으십니까?
- 21. MATLAB은 m 파일을 어떻게 컴파일합니까?
- 22. 여러 버전의 MATLAB은 어떻게 실행합니까?
- 23. Matlab은 그림 외부에 텍스트를 추가합니다.
- 24. Matlab은 C++ GUI에 직접 플롯합니다.
- 25. MATLAB은 꼬리 호출 최적화를 수행합니까?
- 26. 두 항목의 조합을 Linq와 함께 검색
- 27. PHP : 배열의 가능한 모든 조합을 생성합니다. 일부 항목은 필수이고 일부는 선택 사항입니다.
- 28. 시작시 키 조합을 무시합니다.
- 29. 모든 조합을 문자로 바꿉니다.
- 30. MySQL에서는 어느 조합을 선택해야합니까?