Sé que buscar un valor hash por clave es O(1) (tiempo constante), pero ¿es lo mismo si encuentra la clave que tiene un valor determinado? Estoy buscando la clave usando:
const answer = Object.keys(dict).find(key => dict[key] === 1); dict es un objeto que tiene claves enteras.
Esa es la complejidad del tiempo O(n) , ya que está realizando una búsqueda lineal en una matriz (la matriz devuelta por Object.keys ). En el peor de los casos, el elemento que desea será el último elemento de la matriz (o no estará en la matriz en absoluto), lo que requeriría n operaciones para determinar (siendo n la longitud de la matriz), por lo tanto, es O(n) tiempo.