Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Looking up values in an array
Message
De
29/08/2001 20:55:31
 
 
À
29/08/2001 19:16:28
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Divers
Thread ID:
00550067
Message ID:
00550667
Vues:
14
>>>>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.
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform