Em ciência da computação, a fila Brodal é uma heap/fila de prioridade com nível muito baixo no seu pior caso de tempo de complexidade: sendo  para a inserção, encontrar-mínimo, fundir (merge de duas filas) e diminuir-chave, e para remover-mínimo e remoções gerais. Eles são a primeira variante de uma heap a atingir estes limites, sem recorrer a amortização dos custos operacionais. Filas Brodal são nomeados após serem inventadas por Gerth Stølting Brodal.[1]

Apesar de ter o melhores tempos assintóticos que outras filas de prioridade, elas são, nas palavras do próprio Brodal, "muito complicadas" e "não aplicáveis na prática." Brodal e Okasaki descreverem uma versão persistente (puramente funcional) de filas Brodal.[2]

Resumo dos tempos de execução

editar

Nas seguintes complexidades de tempo[3] O(f) é um limite assintótico superior e Θ(f) é um limite assintótico estreito (ver Notação Big O). Os nomes das funções assumem que é um min-heap.

Operação Binária[3] Binomial[3] Fibonacci[3][4] Brodal[5][a]
encontrar-min Θ(1) Θ(log n) Θ(1) Θ(1)
remover-min Θ(log n) Θ(log n) O(log n)[b] O(log n)
inserção O(log n) Θ(1)[b] Θ(1) Θ(1)
diminuir-chave Θ(log n) Θ(log n) Θ(1)[b] Θ(1)
merge Θ(n) O(log n)[c] Θ(1) Θ(1)
  1. Brodal e Okasaki descrevem mais tarde uma variante persistente com os mesmos limites, exceto para o diminuir-chave, que não é suportado. Heaps com n elementos podem ser construídas de baixo-para-cima em O(n).[6]
  2. a b c Tempo amortizado.
  3. n é o tamanho do maior heap.


Referências

  1. Gerth Stølting Brodal (1996). Worst-case efficient priority queues. Proc. 7th ACM-SIAM Symposium on Discrete Algorithms, pp. 52–58
  2. Gerth Stølting Brodal and Chris Okasaki (1996). Optimal purely functional priority queues. J. Functional Programming.
  3. a b c d Cormen, Thomas H.; Leiserson, Charles E.; Rivest, Ronald L. Introduction to Algorithms. [S.l.]: MIT Press and McGraw-Hill 
  4. Fredman, Michael Lawrence; Tarjan, Robert E. «Fibonacci heaps and their uses in improved network optimization algorithms» (PDF). July 1987. Journal of the Association for Computing Machinery. 34 (3): 596–615. doi:10.1145/28869.28874 
  5. Brodal, Gerth S. (1996), «Worst-Case Efficient Priority Queues» (PDF), Proc. 7th Annual ACM-SIAM Symposium on Discrete Algorithms, pp. 52–58 
  6. Goodrich, Michael T.; Tamassia, Roberto (2004). «7.3.6. Bottom-Up Heap Construction». Data Structures and Algorithms in Java 3rd ed. [S.l.: s.n.] pp. 338–341. ISBN 0-471-46983-1 
Ícone de esboço Este artigo sobre estrutura de dados é um esboço. Você pode ajudar a Wikipédia expandindo-o.

📚 Artikel Terkait di Wikipedia

FIFO

Operacionais Modernos, Ed. Campus, 1995 Kruse, Robert L. (1987) [1984]. Data Structures & Program Design (second edition). Joan L. Stone, Kenny Beck, Ed O'Dougherty

Mamíferos

0142150  East ML, Hofer H (2000). «Male spotted hyenas (Crocuta crocuta) queue for status in social groups dominated by females». Behavioral Ecology. 12

Imigração na Europa

Financial Times. 11 de dezembro de 2012. «Thousands in UK citizenship queue». BBC News. Consultado em 13 de maio de 2016  «News». The Telegraph. 15

Unidade de disco rígido

Format and Structure». The PC Guide. Consultado em 18 de março de 2022. Cópia arquivada em 26 de maio de 2019  «Enterprise Performance 15K HDD: Data Sheet»

Impacto econômico da pandemia da COVID-19

de janeiro de 2020. Cópia arquivada em 31 de janeiro de 2020  «Hundreds queue for masks amid virus crisis, with some in line at 7 am» [Centenas fazem

Heap

Object removeMin() throws PriorityQueueEmptyException { if(isEmpty()) throw new PriorityQueueEmptyException("Priority Queue Empty!"); Object min = element(T

Impacto econômico da pandemia da COVID-19 na República da Irlanda

2026  «Consumers urged to start Christmas shopping to minimise December queues» [Consumidores instados a começar as compras de Natal para minimizar filas

DICOM

Radiotherapy Image RTPLAN = Radiotherapy Plan RTSTRUCT = Radiotherapy Structure Set ST = Single-photon Emission Computed Tomography TG = Thermography