여름 내내 나는 입력 할 단어의 가능한 모든 조합을 사용하여 아나 그램을 풀 수있는 프로그램을 작성하기로 결정했다. 나는 그럭저럭 그것을 할 수 있었다. 그러나 그런 길에서 그것은 빨리 밖의 3-4 명의 편지 단어를 해결할 수 있었다. 그러나 무엇이라도 더 많이 그리고 그것은 나이를 투옥 할 것이다! 어쨌든 다른 사이트에서 도움을 청하는 후 어떤 남자/여자가 나를 위해 몇 가지 코드를 작성하여 문제를 해결했습니다. 이 아아 주석과 나는 그것에서 아무것도 얻을 수 있는지 확인하기 위해 오늘 또 다른 모습을 가지고 있지만, 있었다하더라도 내가 그것을 이해하지 못했다 당시나는 문자열의 순열을 나에게 설명 할 누군가가 필요하다.
, 아무것도 ...
내가 연구했습니다 순열 약 2 시간 동안 지금 나는 어디에도 가지 않고있다 - 코드는 인터넷에있다. 그러나 아무도 나에게 개념을 이해할만큼 충분히 잘 설명했다. 나는 아래에서 아직 이해하지 못했던 코드를 게시 할 것이고 누군가가 이것을 상세히 설명 할 수 있다면 그것이 어떻게 작동 하는지를 설명 할 것이다.
Public Sub permutations(ByVal WordLength As Integer, ByVal SplitLetters As List(Of Char), ByVal word As String)
If WordLength = 1 Then
results.Add(word & SplitLetters(0))
count += 1
If count Mod updateCount = 0 Then
ldBar.Value = ((count/pCombinations) * 100)
End If
Else
For i = 0 To WordLength - 1
Dim newWord = word & SplitLetters(i)
Dim newSplitLetters As List(Of Char) = New List(Of Char)(SplitLetters)
newSplitLetters.RemoveAt(i)
Call permutations(WordLength - 1, newSplitLetters, newWord)
Next i
End If
End Sub