Sobes.tech
Junior — Middle

Qual método de busca de elementos é considerado mais eficiente: percorrer um array ou aceder por chave num dicionário?

sobes.tech IA

Resposta da IA

A pesquisa por chave num dicionário é considerada uma forma mais eficiente de encontrar um elemento em comparação com percorrer um array.

Razões:

  • O dicionário é implementado com uma tabela de hash, o que garante um tempo médio de acesso de O(1).
  • Percorrer um array (pesquisa linear) requer verificar cada elemento, com um tempo de pesquisa de O(n).

Exemplo em Swift:

let array = [1, 2, 3, 4, 5]
let dictionary = [1: "one", 2: "two", 3: "three"]

// Pesquisa no array
if array.contains(3) {
    print("Encontrado")
}

// Pesquisa por chave no dicionário
if let value = dictionary[3] {
    print("Encontrado: \(value)")
}

Portanto, se precisar procurar elementos por chave com frequência, é melhor usar um dicionário.