Skip to Content
Aprender algoritmos
book

Aprender algoritmos

by George Heineman
April 2025
Intermediate to advanced
280 pages
7h 29m
Portuguese (Portugal, Brazil)
O'Reilly Media, Inc.
Content preview from Aprender algoritmos

Capítulo 8. Embrulha tudo

Este trabalho foi traduzido com recurso a IA. Agradecemos o teu feedback e comentários: translation-feedback@oreilly.com

O meu objetivo neste livro foi apresentar-te os algoritmos fundamentais e os tipos de dados essenciais utilizados na ciência da computação. Precisas de saber como implementar eficientemente os seguintes tipos de dados para maximizar o desempenho do teu código:

Saco

Uma lista ligada garante um desempenho O(1) quando adiciona um valor. Se optar por usar um array, então precisa de empregar um redimensionamento geométrico para aumentar o tamanho do array de modo a garantir um desempenho O(1) amortizado durante a sua utilização média (embora continue a incorrer num desempenho O(N) em tempo de execução nos eventos de redimensionamento pouco frequentes). Nota que um saco não permite tipicamente a remoção de valores, nem impede a adição de valores duplicados.

Empilha

Uma lista ligada pode armazenar os valores numa pilha, pelo que push() e pop()têm um desempenho de tempo de execução O(1). A pilha regista o top da pilha para empurrar e retirar valores.

Fila de espera

Uma lista ligada pode armazenar eficientemente uma fila, pelo que enqueue() edequeue() têm um desempenho de tempo de execução O(1). A fila regista o nó first e o nó last na lista ligada para adicionar e remover valores da fila de forma eficiente.

Tabela de símbolos

A abordagem de endereçamento aberto para tabelas de símbolos é surpreendentemente eficiente, com funções hash ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Algoritmos en pocas palabras, 2ª edición

Algoritmos en pocas palabras, 2ª edición

George T. Heineman, Gary Pollice, Stanley Selkow

Publisher Resources

ISBN: 9798341642652