capítulo 2 - wordpress.comserem manipulados por logarítmos, de diferentes formas. esse tipo de...
TRANSCRIPT
• Lista encadeada
• Lista circular
• Lista duplamente encadeada
• Pilhas
• Filas
• Árvores
Estrutura de dados
Capítulo 2
estrutura de dados define de que maneira os tipos primitivosserãoorganizados(FORBELLONE,2005):pormeiode lista,pilhas,filasouárvores.Essasopçõesrepresentamosconjuntosa
seremmanipuladosporlogarítmos,dediferentesformas.Essetipodeestruturapodesofreralterações(MARCONDES,2002).Nateoria,refere-seàidentifica-çãoeaodesenvolvimentodemodelosparaaresoluçãodeproblemas.Naprática,significacriarrepresentaçõesconcretasquepodematuarsobremodelos.
2.1. lista encadeadaUmespaçodememóriaéreservadoparaosdados,quandosãoinseridosemumalistaencadeada.Então,oespaçoocupadoporumalista,namemória,éexpressopelaquantidadedeelementoscontidosalidentro.Paraquesepossapercorrertodososelementos,deve-searmazenar–juntoacadaumdeles–umponteiroqueindiqueoelementoseguinte(figura15).
A Cadaelementodalistaéidentificadocomoumnó.Utilizam-seosponteirosparapercorrertodososnósdalista.OúltimoelementodeveráapontarparaNULL(emlinguagemdeprogramaçãodecomputador,éapalavrausadaparasereferiraumdispositivonulo).Paraacriaçãodeumalista,considera-seoprimeiropon-teiroexistente.UmalistavaziadevesercriadacomoponteiroindicandoNULL,permitindo inserçõesnofinal.Essa listadeve ser alocada emumaposiçãodememória,comencadeamentoparaopróximoelemento(figura16).
Retirarumelementoda lista éumprocessoumpoucomais complexo,poispodemosencontrardiferentessituações,comoeliminaroprimeiroelementodalistaouumelementointermediário(figura17).
Outras funçõesagregadasàs listas são:buscadeelementoseverificaçãoparasaberseelaestávaziaounão.
Figura 15 Lista encadeada.
Figura 17 Eliminação de um elemento.
Figura 16Inserção de elemento.
início
INFO 001 II posição 01
INFO 002 II posição 02
INFO 003 II posição 03
início vazio II NULL
início INFO 001 II posição 01
vazio II NULL
início
INFO 001 II posição 01
INFO 002 II posição 02
INFO 003 II posição 03
início
INFO 001 II posição 01
INFO 002 II posição 02
INFO 003 II posição 03
InFoRmátICa 4
50
CaPítulo 2
51
2.4. PilhasApilhaéumaestruturabemsimples,muitasvezesencontradadentrodohard-ware.Aideiaéacessaroprimeiroelementoapartirdotopodapilha.Assim,umnovoelementoinseridonapilhavaidiretoparaotopoe,logicamente,éoúnicoquepodeserretirado.Portanto,oprimeiroquesaiéoúltimoqueentrou.Te-mos,nessecaso,oLIFO(doinglêslastin,firstout,ouúltimodentro,primeirofora).Háduasoperaçõesbásicas,paratrabalharcomaspilhas:push(empilhar)epop(desempilhar)(tabela8).
2.5. FilasOutra estrutura é a fila, que apresenta a ordem de saída dos elementos deformadiferentedoqueaconteceemumapilha.Nafila,oprimeiroelementoqueentraéoprimeiroasair:FIFO(firstin,firstout,ouseja,primeirodentro,primeirofora).Épossívelinserirumnovoelementonofinaldafilaeretiraroprimeiro(tabela9).
2.2. lista circularEmumalistacircularoúltimoelementodeveráapontarparaoprimeiro(figura18).Parapercorreralistaéprecisovisitartodososseuselementos,apartirdeumponteiroinicial,atéchegaraelenovamente.CasooponteiroinicialsejaNULL,alistaseráconsideradavazia.
2.3. lista duplamente encadeadaNalistaencadeadaháumponteiroindicandoopróximoelemento.Jánadu-plamenteencadeadasãodoisponteiros:ummostrandooelementoseguinteeoutro, o anterior.Apartir deum elementopodemos acessar ambos os lados(figura19).
Figura 18 Lista circular.
tabela 8Push e pop em uma pilha.
Figura 19Lista duplamente
encadeada.tabela 9Entrada e saída de uma fi la.
252525 404040151515 151515 151515
101010
101010202020 353535 101010
202020 101010101010 151515 151515 151515 202020 353535
INFO 001 II posição 01
INFO 002 II posição 02
INFO 003 II posição 03
INFO 001 II posição 01
II posição 02
INFO 001 II posição 01
II posição 02
INFO 001 II posição 01
II posição 02
InFoRmátICa 4
52
CaPítulo 2
53
Naárvorebináriacadanótemzero,umou,nomáximo,dois“filhos”.Então,épossíveldefinirumaárvorebináriacomovaziaouumnóraizcomduassubár-vores–umanadireita(sad)eoutranaesquerda(sae)(figura22).
• árvore genérica
Naárvorebináriahárestriçãoquantoaonúmerodenós:nomáximodois.Esselimitenãoacontecenasárvoresgenéricas(figura23).
2.6. árvoresOstópicosanterioresrepresentamadisposiçãodedadoslineares.Asárvores,porsuavez,permitemqueosdadossejamdispostosdeformahierárquica,comoumaestruturadediretórios.Todaárvorepossuiumnó“r”,denominadoraiz.Osdemaisnóssãoidentificadoscomointernosou“filhos”(figura20).
• árvores binárias
Umbomexemplodeárvorebináriasãoasexpressõesmatemáticas,asquaisnospermitem distribuir os operadores e os operandos. Por exemplo, a expressão((1+2)*(5*3))-2(figura21).
Figura 20Árvore e seus nós.
Figura 22 Esquema da Árvore Binária.
Figura 21 Árvore binária.
Figura 23Árvore genérica.
R
A CB D E
raiz
sae sad
+
1 2
*
5 3
-
* 2
InFoRmátICa 4
54
CaPítulo 2
55