home *** CD-ROM | disk | FTP | other *** search
/ PC World 2006 February / PCWorld_2006-02_cd.bin / software / vyzkuste / triky / triky.exe / autoit-v3-setup.exe / Examples / _ArrayBinarySearch.au3 < prev    next >
Text File  |  2004-12-19  |  1KB  |  58 lines

  1. #include <Array.au3>
  2. Dim $avArray[10]
  3.  
  4. $avArray[0] = "JPM"
  5. $avArray[1] = "Holger"
  6. $avArray[2] = "Jon"
  7. $avArray[3] = "Larry"
  8. $avArray[4] = "Jeremy"
  9. $avArray[5] = "Valik"
  10. $avArray[6] = "Cyberslug"
  11. $avArray[7] = "Nutster"
  12. $avArray[8] = "JdeB"
  13. $avArray[9] = "Tylo"
  14.  
  15. ; sort the array to be able to do  a binary search
  16. _ArraySort( $avArray)
  17.  
  18. ; display sorted array
  19. _ArrayDisplay( $avArray, "sorted" )
  20.  
  21. ; Lookup existing entry
  22. $iKeyIndex = _ArrayBinarySearch ( $avArray, "Jon" )
  23. If Not @error Then
  24.    Msgbox(0,'Entry found',' Index:' & $iKeyIndex)
  25. Else
  26.    Msgbox(0,'Entry Not found',' Error:' & @error)
  27. EndIf
  28.  
  29. ; Lookup None existing entry
  30. $iKeyIndex = _ArrayBinarySearch ( $avArray, "Unknown" )
  31. If Not @error Then
  32.    Msgbox(0,'Entry found',' Index:' & $iKeyIndex)
  33. Else
  34.    Msgbox(0,'Entry Not found',' Error:' & @error)
  35. EndIf
  36.  
  37.  
  38. ;
  39. ; Example 2, using an Array returned by StringSplit
  40. ;
  41. $avArray = StringSplit("a,b,d,c,e,f,g,h,i",",")
  42.  
  43. ; sort the array to be able to do  a binary search
  44. _ArraySort( $avArray, 0, 1)
  45.  
  46. ; display sorted array
  47. _ArrayDisplay( $avArray, "sorted" )
  48.  
  49. ; added 1 as second parameter to skip looking in $avArray[0]
  50. $iKeyIndex = _ArrayBinarySearch ( $avArray, "c",1 )  
  51. If Not @error Then
  52.    Msgbox(0,'Entry found',' Index:' & $iKeyIndex)
  53. Else
  54.    Msgbox(0,'Entry Not found',' Error:' & @error)
  55. EndIf
  56.  
  57. Exit
  58.