Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Looking up values in an array
Message
From
29/08/2001 20:55:31
 
 
To
29/08/2001 19:16:28
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Miscellaneous
Thread ID:
00550067
Message ID:
00550667
Views:
15
>>>>There's no other function to search for a value in an array, you're probably going to have to order the array and then compare all the values one by one.
>>>>
>>>>Either ASORT() or adding ORDER BY to your select would give you an ordered array that you can work with for this.
>>>
>>>If you "compare all the values one by one," there is no benefit from ordering the array. If you do a binary search of the array, the ordering is required and the search will be extremely efficient and will outperform an ascan() after arrays reach about 3000 rows.
>>
>>I suppose you're right, if you compare all the values. But the idea was to find any value greater or equal to the user-specified criteria, so the ordering of the array is also required on this case.
>
>You still have to step through all elements because he wants to return the subset of greater values. Ordered set: sequential seach for first greater than, sequential step to end. Non ordered set: sequential step to end with compare of each element. Is the sort faster than the additional compares? Depends on how close to the end of the sorted list the first greater tan value is.

Actually, he clarified that the search was for the date closest to the user-entered value. Either way it would work though, with an ordered array.
Previous
Reply
Map
View

Click here to load this message in the networking platform