1
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DA PARAÍBA – CAMPUS CAMPINA GRANDE CURSO: CURSO SUPERIOR DE TECNOLOGIA EM TELEMÁTICA PERÍODO: P2 TURMA: N DISCIPLINA: PROGRAMAÇÃO E ESTRUTURAS DE DADOS PROFESSOR: CÉSAR ROCHA VASCONCELOS SEMESTRE LETIVO NOME: Prática Laboratório – Filas (Seq. Circulares e Enc. com Cabeça) 1) Utilizando técnicas de modularização de sistemas vistas em sala, implemente o tipo abstrato de dados Fila com representação seqüencial circular (use tipo base inteiro). Implemente este novo tipo numa biblioteca chamada filaseqcirc.h, contendo uma interface bem definida (definição de tipos e funções) e código muito bem documentado . A biblioteca deve possuir as operações básicas de uma fila discutidas em sala. Execute e teste este novo TAD (ele deve funcionar normalmente). 2) Utilizando técnicas de modularização de sistemas vistas em sala, implemente o tipo abstrato de dados Fila com representação encadeada e com cabeça (use tipo base inteiro). Implemente este novo tipo numa biblioteca chamada filaenccab.h, contendo uma interface bem definida (definição de tipos e funções) e código muito bem documentado . A biblioteca deve possuir as operações básicas de uma fila discutidas em sala. Execute e teste este novo TAD (ele deve funcionar normalmente). 3) Utilizando as funções desenvolvidas na questão 1, implemente agora, na biblioteca filaseqcirc.h, uma função que possa receber três filas seqüenciais circulares como parâmetro e transferir, alternadamente, todos os elementos das duas primeiras filas f1 e f2 para uma terceira fila f_res, conforme ilustrado a seguir: Note que, ao final da função, as filas f1 e f2 deverão estar vazias e a terceira fila f_res vai conter todos os elementos de f1 e f2 (alternados, claro). Considere, em sua função, a situação em que a f_res esteja ou não vazia no momento em que for passada como parâmetro. O protótipo: void combina_filas( TFilaSeqCirc f_res, TFilaSeqCirc f1, TFilaSeqCirc f2 ) 4) Utilizando as funções desenvolvidas na questão 2, implemente agora, na biblioteca filaenccab.h, a mesma função combina filas da questão anterior. Porém, esta função irá agora trabalhar com três filas encadeadas com cabeça . O novo protótipo: void combina_filas( TFilaEncCab f_res, TFilaEncCab f1, TFilaEncCab f2 )

Exercicio sobre Estruturas de Dados

Embed Size (px)

DESCRIPTION

Exercicios ligados a apostilas de estruturas de dados.

Citation preview

  • INSTITUTO FEDERAL DE EDUCAO, CINCIA E TECNOLOGIA DA PARABA CAMPUS CAMPINA GRANDE

    CURSO: CURSO SUPERIOR DE TECNOLOGIA EM TELEMTICA PERODO: P2 TURMA: N DISCIPLINA: PROGRAMAO E ESTRUTURAS DE DADOS

    PROFESSOR: CSAR ROCHA VASCONCELOS SEMESTRE LETIVO

    NOME:

    PPrrttiiccaa LLaabboorraattrriioo FFiillaass ((SSeeqq.. CCiirrccuullaarreess ee EEnncc.. ccoomm CCaabbeeaa))

    1) Utilizando tcnicas de modularizao de sistemas vistas em sala, implemente o tipo abstrato de dados Fila com representao seqencial circular (use tipo base inteiro). Implemente este novo tipo numa biblioteca chamada filaseqcirc.h, contendo uma interface bem definida (definio de tipos e funes) e cdigo muito bem documentado. A biblioteca deve possuir as operaes bsicas de uma fila discutidas em sala. Execute e teste este novo TAD (ele deve funcionar normalmente).

    2) Utilizando tcnicas de modularizao de sistemas vistas em sala, implemente o tipo abstrato de dados Fila com representao encadeada e com cabea (use tipo base inteiro). Implemente este novo tipo numa biblioteca chamada filaenccab.h, contendo uma interface bem definida (definio de tipos e funes) e cdigo muito bem documentado. A biblioteca deve possuir as operaes bsicas de uma fila discutidas em sala. Execute e teste este novo TAD (ele deve funcionar normalmente).

    3) Utilizando as funes desenvolvidas na questo 1, implemente agora, na biblioteca filaseqcirc.h, uma funo que possa receber trs filas seqenciais circulares como parmetro e transferir, alternadamente, todos os elementos das duas primeiras filas f1 e f2 para uma terceira fila f_res, conforme ilustrado a seguir:

    Note que, ao final da funo, as filas f1 e f2 devero estar vazias e a terceira fila f_res vai conter todos os elementos de f1 e f2 (alternados, claro). Considere, em sua funo, a situao em que a f_res esteja ou no vazia no momento em que for passada como parmetro.

    O prottipo: void combina_filas( TFilaSeqCirc f_res, TFilaSeqCirc f1, TFilaSeqCirc f2 )

    4) Utilizando as funes desenvolvidas na questo 2, implemente agora, na biblioteca filaenccab.h, a mesma funo combina filas da questo anterior. Porm, esta funo ir agora trabalhar com trs filas encadeadas com cabea. O novo prottipo: void combina_filas( TFilaEncCab f_res, TFilaEncCab f1, TFilaEncCab f2 )