2010-11-24 7 views
0

어떻게하면 단추를 코딩 할 때 목록 상자의 항목을 오름차순 또는 내림차순으로 정렬 할 것인지 (클릭 한 단추에 따라 다름) Sort()이 내장되어 있지만 루프는 예를 들어 for이어야합니다. 이 문제에 대한 해결책을 의사 코드로 작성하여 "for 루프가있는 배열에 각 목록 상자 항목 저장"까지갔습니다.목록 상자에 문자열 항목 오름차순 및 내림차순 정렬

답변

0

나는 이것을위한 해결책을 제공 할 것이지만, 숫자를 정렬하기 위해서는 어느 문자열이 다른 것보다 큰지를 결정하기 위해 비교 논리를 변경하기 만하면됩니다.

1 단계 : 목록 상자의 항목을 배열 ar에 복사하십시오. 스텝 2 : 그를 위해 자신의 숙제를하지 마십시오

Private quickArr() As Integer 

Public Sub QuickSort(ByVal arr() As Integer) 
    quickArr = arr 
    DoQuickSort(0, arr.Length - 1) 
End Sub 

Private Sub DoQuickSort(ByVal low As Integer, ByVal high As Integer) 
    Dim i As Integer = low 
    Dim j As Integer = high 
    Dim pivot As Integer = Math.Ceiling(quickArr(((low + high)/2))) 'pivot is the middle element(ceiling) 
    mMoves += 1 
    While i <= j 
     While quickArr(i) < pivot 
      i += 1 
     End While 
     While quickArr(j) > pivot 
      j -= 1 
     End While 
     If i <= j Then 
      Dim t As Integer = quickArr(i) 
      quickArr(i) = quickArr(j) 
      quickArr(j) = t 
      i += 1 
      j -= 1 
      mMoves += 2 
     End If 
    End While 
    If low < j Then 
     DoQuickSort(low, j) 
    End If 
    If i < high Then 
     DoQuickSort(i, high) 
    End If 
End Sub 

목록 상자

+1

로 다시 resuly 배열을 3 복사 : 빠른 정렬을 사용하여 – SLaks

관련 문제