Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

160
Visualizações
What is the BigO of these simple Javascript functions?

I have the following two arrays, names call it n, and sortOrder call it k.

const names = ['bob', 'bob', 'jim', 'mike', 'dale']; // n
const sortOrder = ['jim', 'bob', 'mike']; // k, this is a unique array

the result after my functions should be an array that looks like so,

['jim', 'bob', 'bob', 'mike']

that is ordering the array based on the position of the names in sortOrder.

What is the Big(O) of the following two functions? Thanks in advance!

function order1(names, sortOrder) {
const newNames = [];

for (let order of sortOrder) {
    for (let name of names) {
        if (order === name) {
            newNames.push(item);
            continue;
        }
    }
}

return newNames;
}


function order2(names, sortOrder) {
let newNames = [];
const orderMap = {};

for (let name of names) {
    if (!orderMap[name]) {
        orderMap[name] = 1;
    } else {
        orderMap[name] += 1;
    }
}

for (let order of sortOrder) {
    if (orderMap[order]) {
        newNames = [...newNames, ...Array(orderMap[order]).fill(order)];
    }
}


return newNames;
}
about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda