Algoritmos de classificação – comunidade de desenvolvimento

O FEEM FEED segue novos subforems para melhorar sua comunidade Feed Dev segue um espaço para discutir e manter o desenvolvimento de software e gerenciar sua carreira de software Future Siga notícias e discussões sobre ciência e tecnologia, como IA, VR, criptomoeda, computação quântica e muito mais. Os jogadores seguem uma comunidade inclusiva para os entusiastas dos jogos, a música que se segue de composição e gig para equipamentos, a música quente e tudo mais. Vibe codificação ForeM Siga discutindo o desenvolvimento de software de IA e mostrando o que estamos construindo. O núcleo do código aberto FOREM segue discutindo o principal projeto de software FOREM-recursos, bugs, desempenho, auto-hospedagem. O Maker Forem segue uma comunidade para criadores, entusiastas e profissionais para discutir Arduino, Raspberry Pi, impressão 3D e muito mais. Menu suspenso Pule para o menu de navegação de conteúdo Adicione o salto de reação aos comentários Salvar Boost Classificação Common Algoritmos Bubble Sort | Tempo de execução: o (n²) média e pior caso. Memória: O (1). Em um tipo de bolha, começamos no início da matriz e trocamos os dois primeiros elementos se o primeiro for maior que o segundo. Depois vamos para o próximo par e assim por diante, fazendo continuamente as varreduras da matriz até que ela seja classificada. Ao fazer isso, os itens menores “bolhas” lentamente até o início da lista. Classificação de seleção | Tempo de execução: o (n²) média e pior caso. Memória: O (1). Encontre o menor elemento usando uma varredura linear e mova -o para a frente (trocando -o com o elemento frontal). Em seguida, encontre o segundo menor e mova -o, novamente fazendo uma varredura linear. Continue fazendo isso até que todos os elementos estejam no lugar. Merge classy | Tempo de execução: o (n log (n)) média e pior caso. Memória: depende. Merge Sort divide a matriz ao meio, classifica cada uma dessas metades e depois as combina novamente. Cada uma dessas metades tem o mesmo algoritmo de classificação aplicado a ele. Eventualmente, você está mesclando apenas duas matrizes de elementos sibilizadores. É a parte “mescla” que faz todo o trabalho pesado. O método de mesclagem opera copiando todos os elementos do segmento de matriz de destino em uma matriz auxiliar, acompanhando onde deve estar o início das metades esquerda e direita (Helperleft e Helperright). Em seguida, iteramos através do ajudante, copiando o elemento menor de cada metade para a matriz. No final, copiamos e os elementos restantes na matriz de destino. Classificação rápida | Tempo de execução: o (n log (n)) média, o (n²) pior caso. Memória: o (log (n)) Na classificação rápida, escolhemos um elemento aleatório e partimos a matriz, de modo que todos os números que são menores que o elemento de partição vêm antes de todos os elementos maiores que ele. O particionamento pode ser realizado com eficiência através de uma série de swaps. Radix Sort | Tempo de execução: O (KN) Radix Sort é um algoritmo de classificação para números inteiros (e alguns outros tipos de dados) que aproveita o fato de que os números inteiros têm um número finito de bits. Na classificação do Radix, iteramos em cada dígito do número, agrupando números por cada dígito. Por exemplo, se tivermos uma variedade de números inteiros, poderíamos primeiro classificar até o primeiro dígito, para que os 0s sejam agrupados. Em seguida, classificamos cada um desses agrupamentos no próximo Gdigit. Repitamos esse processo de classificação por cada dígito subsequente, até que finalmente toda a matriz seja classificada. Ao contrário dos algoritmos de classificação de comparação, que não podem ter um desempenho melhor que o O (n log (n)) no caso médio, a classificação do Radix tem um tempo de execução de O (kN), onde n é o número de elementos e k é o número de passes do algoritmo de classificação. Os principais comentários (0) somos um lugar onde os codificadores compartilham, permanecem atualizados e aumentam suas carreiras.

Fonte

Publicar comentário

Você pode ter perdido