how isKey searches keys of an associative map (containers.Map)

3 Ansichten (letzte 30 Tage)
Herbert Triceratops
Herbert Triceratops am 23 Sep. 2021
Beantwortet: Samhitha am 23 Apr. 2025
If M is an associative map (containers.Map) and k is a potential key, what exactly happens when I execute isKey(M,k)? It seems that the output of keys(M) is ordered by whatever the "natural" order is for M's particular type of key. Does that mean that isKey does a binary search? Or does isKey do a linear search? Or does isKey do something else? Or does it depend on details that I didn't include here?
Thanks!

Antworten (1)

Samhitha
Samhitha am 23 Apr. 2025
While executing isKey(M, k) on a containers.Map in MATLAB, the function checks for the existence of the key using a hash table lookup, not a linear or binary search. The order of keys returned by keys(M) is just for display and does not affect how “isKey” works. The key lookup is generally very fast average-case constant time and independent of key type or order.
For more details go through the following documentation

Kategorien

Mehr zu Analysis of Variance and Covariance finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by