Listas Lineares. Fundamentos

Tamanho: px
Começar a partir da página:

Download "Listas Lineares. Fundamentos"

Transcrição

1 Listas Lineares Fundamentos Uma lista linear é uma coleção L:[a 1, a 2,..., a n ], n 0, cuja propriedade estrutural baseia-se apenas na posição relativa dos elementos, que são dispostos linearmente. Se n=0, dizemos que a lista L é vazia; caso contrário, são válidas as seguintes propriedades: a 1 é o primeiro elemento de L; a n é o último elemento de L; a k, 1<k<n, é precedido pelo elemento a k-1 e seguido por a k+1 em L. Diversas operações que podemos realizar sobre listas: acessar um elemento qualquer da lista; inserir um elemento numa posição específica da lista; remover um elemento de uma posição específica da lista; combinar duas listas em uma única; particionar umalista em duas; obter cópias de uma lista; determinar o total de elementos na lista; ordenar os elementos da lista; procurar um determinado elemento na lista; apagar uma lista; outras... Considerando-se somente as operações de acesso, inserção e remoção, restritas aos extremos da lista, temos casos especiais que aparecem muito frequentemente na modelagem de problemas a serem resolvidos por computador. Tais casos especiais recebem também nomes especiais: Pilha: lista linear onde todas as inserções, remoções e acessos são realizados em um único extremo. Listas com esta característica são também denominados listas LIFO (Last-In / First-Out, ou em português: último que entre / primeiro que sai). Fila: lista linear onde todas as inserções são feitas num certo extremo e todas as remoções e acessos são realizados no outro. Filas são também denominadas listas FIFO (First-In / First-Out, ou em protuguês, primeiro que entra / primeiro que sai). Fila Dupla: lista linear onde as inserções, remoções ou acessos são ralizados em qualquer extremo. Filas Duplas são também denominadas DEQUE (Double-Ennded QUEue, ou em português: fila de extremidade dupla). Uma Fila Dupla pode ainda gerar dois casos especiais: Fila Dupla de Entrada Restrita (se a inserção for restrita a um único extremo) e Fila Dupla de Saída Restrita (se a remoção for restrita a um único extremo). Página 1

2 LISTA PILHA FILA FILA DUPLA FDER FDSR É extremamente difícil de se obter uma implementação onde todas as operações sejam com a mesma eficiência. Por exemplo, uma implementação que facilite o acesso a qualquer elemento da lista, certamente dificultará a inserção e a remoção de elementos no meio da mesma, como veremos futuramente.diante deste problema, estudaremos algumas alternativas de como implementar listas lineares na memória do computador. Assim, dependendo das operações realizadas com maior freqüência, podemos fazer escolhas que tornem a nossa aplicação a mais eficiente possível. Alocação de Memória Ao desenvolver uma implementaçao para listas lineares, o primeiro problema que surge é: como podemos armazenar os elementos da lista, dentro do computador? A alocação de memória, do ponto de vista do programador, esterá em uma das quatro categorias apresentadas a seguir: Sequencial Encadeada Estática Estática Sequencial Estática Encadeada Dinâmica Dinâmica Sequencial Dinâmica Encadeada Alocação Estática versus Dinâmica Dizemos que as variáveis de um programa têm alocação estática se a quantidade total de memória utilizada pelos dados é previamente conhecida e definida de modo imutável, no próprio código-fonte do programa. Durante toda a execução, a quantidade de memória utilizada pelo programa não varia. Por outro lado, se o programa é capaz de criar novas variáveis enquanto executa, isto é, se áreas de memória que não foram declaradas no programa passam a existir durante a sua execução, então dizemos que a alocação é dinâmica. Os atributos seqüencial e encadeada só fazem sentido se a memória considerada for armazenar uma coleção de objetos. Alocação Sequencial A forma mais natural de armazenar uma lista dentro do computador consiste em colocar os seus elementos em células de memória consecutivas, um após o outro. Assim, se cada célula tem um endereço único ε e utiliza k bytes, temos: Página 2

3 ε k ε ε + k... a i-1 a i a i+1 Endereço (a i ) = ε Endereço (a i-1 ) = ε - k Endereço (a i+1 ) = ε + k k De forma genérica, assumindo que o elemento a1 encontra-se na célula de endereço B, temos a equação: a i = B+(i-1)k. B+0k B+1k b+2k B+(i-1)k B+(i-1)k... a1 a2 a3... a i... a n... --k-- A maior vantagem no uso de uma área seqüencial de memória para armazenar uma lista linear é que, dado o endereço inicial de cada área alocada e o índice i de um elemento qualquer da lista, podemos acessá-lo imediatamente. O ponto fraco desta forma de armazenamento aparece quando precisamos inserir ou suprimir elementos do meio da lista. Cada elemento de uma lista linear é chamado de NÓ. Exemplo de uma lista Linear Seqüencial em Pascal: Criar uma lista em Pascal que armazene os seguintes dados sobre 4 pessoas: Código de identificação, nome, naturalidade, estado e Nascimento. O programa deve permitir a digitação dos dados das 4 pessoas e a seguir possibilitar a busca dos dados de uma das pessoas através de seu código de identificação. program pessoas; uses crt; type Tdados_pessoais=record {armazena a tabela com os dados pessoais} pessoaid:integer; nome:string; naturalidade:string; uf:string[2]; nasc:string[10]; var iprocura, inoh:integer; Página 3

4 dados_pessoais:array[1..4] of Tdados_pessoais; i:integer; const count=4; function busca(ipessoaid:integer):integer; var i:integer; for i:=1 to count do if dados_pessoais[i].pessoaid=ipessoaid then busca:=i; exit; {Le a tabela} for i:=1 to count do Writeln('Digite os dados da pessoa ',i); Writeln; write('codigo... :'); readln(dados_pessoais[i].pessoaid); write('nome... :'); readln(dados_pessoais[i].nome); write('naturalidade... :'); readln(dados_pessoais[i].naturalidade); write('uf... :'); readln(dados_pessoais[i].uf); write('nascimento... :'); readln(dados_pessoais[i].nasc); writeln('digite a chave procurada'); readln(iprocura); inoh:=busca(iprocura); writeln('a chave eh: ', inoh); writeln('identificacao...:', dados_pessoais[inoh].pessoaid); writeln('nome...:', dados_pessoais[inoh].nome); writeln('naturalidade...:', dados_pessoais[inoh].naturalidade); writeln('estado...:', dados_pessoais[inoh].uf); writeln('nascimento...:', dados_pessoais[inoh].nasc); end. Como fazer para mostrar todas as pessoas cadastradas? Como fazer para remover a 2 pessoa da lista? Página 4

5 Alocação Encadeada Ao invés de manter os elementos agrupados numa área contínua de memória, isto é, ocupando células consecutivas, na alocação encadeada os elementos podem ocupar quaisquer células (não necessariamente consecutivas) e, para manter a relação de ordem linear, juntamente com cada elemento é armazenado o endereço do próximo elemento da lista. Desta forma, na alocação encadeada, os elementos são armazenados em blocos de memória denominados nodos, sendo que cada nodo é composto por dosi campos: um para armazenar dados e outro para armazenar endereço. Dois endereços especiais devem ser destacados: O enerço do primeiro elemento da lista (L); O endereço do elemento fictício que segue o último elemento da lista (Φ). Endereço Conteúdo L= 3FFA a 1 1C34 Primeiro elemento, acessível a partir de L. 1C34... BD2F... a 2 a 3 BD2F AC12 Note que o segundo elemento não ocupa a um endereço consecutivo àquele ocupado por a a i 3A7B Cada nodo armazena um elemento e o endereço do próximo elemento da lista a n-2 14F6 14F6 a n-1 5D4A 5D4A a n Φ Último elemento da cadeia, o endereço nulo Φ indica que o elemento a n não tem um sucessor A alocação encadeada apresenta com maior vantagem a facilidade de inserir ou remover elementos do meio da lista. Como os elementos não precisam estar armazenados em posições consecutivas de memória, nenhum dado precisa ser movimentado, bastando atualizar o campo de ligação do elemento que precede aquele inserido ou removido. Por exemplo, para remover o elemento a 2 da lista representada no esquema acima, basta mudar o nodo no endereço 3FFA de (a 1, 1C34) para (a 1, BD2F). Como apenas o primeiro elemento é acessível diretamente através do endereço L, a grande desvantagem da alocação encadeada surge quando desejamos acessar uma posição específica dentro da lista. Neste caso, devemos partir do primeiro elemento e ir seguindo os campos de ligação, um a um, até atingir a posição desejada. Obviamente, para listas externas, esta operação pode ter um alto custo em relação a tempo. Página 5

6 Exercícios com listas lineares 1. Uma aplicação precisava de uma estrutura de dados para representar com eficiência um estante de livros, dentro do computador, para efeito de algumas simulações. O programador resolveu representar a estante por uma lista linear E:[P 1, P 2,..., P n ], onde cada elemento P i é uma prateleira, também representada por uma lista P i :[L 1, L 2,..., L m], cujos elementos L j são livros. Considerando as características físicas dos objetos, que categoria de alocação você escolheria para representar cada uma das listas? Justifique suas escolhas. R: Segundo o enunciado, a estante de livros E é representada por uma lista linear [P 1, P 2,..., P n ], onde cada P i é uma prateleira representada por outra lista [L 1, L 2,..., L m], tal que cada L j é um livro qualquer. Admita que o número de prateleiras numa estante é fixo, e que o número de livros é variável. Assim, seria adequado implementar a lista E usando alocação estática seqüencial, pois podemos prever o total de prateleiras em cada estante no momento em que escrevemos o programa simulador. Já as listas P i deveriam ser implementadas usando-se alocação dinâmica encadeada, pois além de não sabermos de antemão qual a quantidade exata de livros em cada prateleira, eles estarão constantemente sendo retirados e recolocados nas estantes, o que caracteriza uma coleção com ordenação altamente dinâmica. Este exercício mostra a relevância dos aspectos físicos dos objetos, cujas abstrações pretendemos manipular num programa, na hora em que temos que decidir qual categoria de alocação empregaremos para representá-los! 2. Por que motivo as listas devem ser implementadas na forma seqüencial, quando acessar um elemento arbitrário for uma operação muito requisitada? Porque basta indicar seu endereço, uma vez que não é necessário ler toda a lista. 3. Por que motivo os valores L e Φ são considerados especiais no esquema de alocação encadeada? Porque o L contem o endereço do primeiro elemento da lista e o Φ o último. 4. Considere as variáveis representadas a seguir, onde L é um inteiro, D é um vetor de caracteres e i é um valor de inteiros: L:? D: h c a f e g d b I:???????? Sabendo-se que as variáveis acima representam, de forma encadeada e estática, a lista linear L:[a, b, c, d, e, f, g, h]: a) Qual o valor que deve estar armazenado na variável L? (3) b) Quais os valores armazenados no vetor I? (8, 2, 7, 5, 4, 6, 1, 0) c) Quais as instruções necessárias para remover o elemento c da lista? d) Como inserir outro elemento b no lugar do c que foi removido? e) Se um elemento está na posição p, como encontrar seu predecessor? Basta ler o índice de I-1 f) Codifique uma rotina em pascal para imprimir os elementos da lista L em ordem e resolver todas as questões acima. Página 6

7 Implementação em pascal do exercício 4. program lista1; uses crt; var primelemento, i:integer; L:array [1..8] of char; Li:array [1..8] of integer; procedure mostralista; Writeln(L[primElemento]); for i:=1 to 8 do if Li[i]=0 then break; Writeln(L[Li[i]]); primelemento:=3; L[1]:='h'; L[2]:='c'; L[3]:='a'; L[4]:='f'; L[5]:='e'; L[6]:='g'; L[7]:='d'; L[8]:='b'; { mostra os elementos da lista L} for i:=1 to 8 do Writeln(L[i]); { valores iniciais necessários para o vetor Li } Li[1]:=8; Li[2]:=2; Li[3]:=7; Li[4]:=5; Li[5]:=4; Li[6]:=6; Li[7]:=1; Li[8]:=0; mostralista; { solução da questão C: para remover o elemento 'c' da lista necessário mover os índices } for i:=2 to 7 do Li[i]:=Li[i+1]; mostralista; { solução da questão D } for i:=8 downto 3 do Li[i]:=Li[i-1]; Li[2]:=8; mostralista; end. Página 7

8 Exercícios referentes a listas encadeadas. Fazer um programa em pascal para classificar os vetores seguintes através da utilização de um vetor auxiliar. a) Lista de nomes de pessoas. Paulo Tiago João Lucas Maria Pedro André Jonas b) Lista de valores inteiros c) Lista de estados do Brasil SP RJ SC AM PE DF TO PR Simulação do uso de listas encadeadas na criação de arquivos de índice. O arquivo seguinte usa três vetores para simular a criação de arquivos de índices usados em tabelas de dados. program lista2; { esse programa simula a criação de um arquivo de índice } uses crt; var i,a,b:integer; L:array [1..10] of string; C:array [1..10] of string; V:array [1..10] of integer; nomemenor:string; indicemenor:integer; { Entrada dos elementos da lista - os nomes podem ser variáveis } L[1]:='Helena'; L[2]:='Jimena'; L[3]:='Fabio'; L[4]:='Ana'; L[5]:='Elaine'; L[6]:='Bruno'; L[7]:='Sandra'; L[8]:='Paulo'; L[9]:='Monica'; L[10]:='Klauss'; { } for i:=1 to 10 do { copia o vetor em um auxiliar } C[i]:=L[i]; for a:=1 to 10 do Página 8

9 nomemenor:='zz'; for b:=1 to 10 do if (nomemenor > C[b]) and (C[b]<>'*') then nomemenor := C[b]; indicemenor:=b; V[a]:=indiceMenor; C[indiceMenor]:='*'; { trecho apenas ilustrativo, passo a passo a busca dos nomes } for i:=1 to 10 do writeln(i,' ',C[i]); { } { mostra a lista L ordenada através do vetor V } for i:=1 to 10 do writeln(l[v[i]]); { } end. Exercício: Crie um programa em pascal que receba uma lista de dados sobre 5 produtos. Cada produto deve conter código, nome, qtde em estoque e preço unitário. Depois de receber os dados referentes ao produto, o programa deve mostrar um menu na tela de forma a permitir ao usuário a classificação dos produtos de acordo com as opções apresentadas a seguir: 1 classificar por código 2 classificar por nome 3 classificar por quantidade em estoque 4 classificar por preço unitário. Esses itens referem-se à simulação de 4 arquivos de índice para os produtos. Página 9

Algoritmos e Estrutura de Dados. Aula 05 Estrutura de Dados: Listas Prof. Tiago A. E. Ferreira

Algoritmos e Estrutura de Dados. Aula 05 Estrutura de Dados: Listas Prof. Tiago A. E. Ferreira Algoritmos e Estrutura de Dados Aula 05 Estrutura de Dados: Listas Prof. Tiago A. E. Ferreira Introdução Um das formas mais usadas para se manter dados agrupados é a lista Lista de compras, itens de estoque,

Leia mais

Curso : Tecnologia em Desenvolvimento de Sistemas - AEMS

Curso : Tecnologia em Desenvolvimento de Sistemas - AEMS Curso : Tecnologia em Desenvolvimento de Sistemas - AEMS Série : 3 º Período - 1 º Semestre de 2011 Professora : Elzi Ap. Gil 3. LISTAS LINEARES PARTE - III Disciplina - Estrutura de Dados Segundo Pereira(2002),

Leia mais

Algoritmos e Estrutura de Dados. Prof. Tiago A. E. Ferreira

Algoritmos e Estrutura de Dados. Prof. Tiago A. E. Ferreira Algoritmos e Estrutura de Dados Aula 7 Estrutura de Dados: Listas Prof. Tiago A. E. Ferreira Introdução Um das formas mais usadas para se manter dados agrupados é a lista Lista de compras, itens de estoque,

Leia mais

PROGRAMAÇÃO II 4. ÁRVORE

PROGRAMAÇÃO II 4. ÁRVORE 4. ÁRVORE PROGRAMAÇÃO II Prof. Jean Eduardo Glazar Uma árvore impõe uma estrutura hierárquica em uma coleção de itens. Um exemplo familiar é a árvore genealógica. Árvores despontam de forma natural em

Leia mais

Filas. A ordem de saída corresponde diretamente à ordem de entrada dos elementos. Fila de caixa bancário

Filas. A ordem de saída corresponde diretamente à ordem de entrada dos elementos. Fila de caixa bancário Filas Fila é um tipo de lista linear onde as inserções são realizadas num extremo (final da Fila) e as remoções restritas ao outro (começo da Fila). O primeiro a entrar é o primeiro a sair e último a entrar

Leia mais

Estrutura de Dados. Introdução a Ponteiros. Prof. Gerson Borges Estrutura de Dados I 1

Estrutura de Dados. Introdução a Ponteiros. Prof. Gerson Borges Estrutura de Dados I 1 Estrutura de Dados Introdução a Ponteiros Prof. Gerson Borges Estrutura de Dados I 1 Sumário è Explicação da importância do planejamento de ensino; è Métodos e técnicas que iremos trabalhar durante o semestre;

Leia mais

- UNIVERSIDADE DO VALE DO RIO DOS SINOS CIÊNCIAS EXATAS E TECNOLÓGICAS Curso: Informática / Ciência da Computação

- UNIVERSIDADE DO VALE DO RIO DOS SINOS CIÊNCIAS EXATAS E TECNOLÓGICAS Curso: Informática / Ciência da Computação Programação 1I Prof. Osório Árvores Genéricas Pag.: 1 - UNIVERSIDADE DO VALE DO RIO DOS SINOS CIÊNCIAS EXATAS E TECNOLÓGICAS Curso: Informática / Ciência da Computação Programação II Disciplina: Linguagem

Leia mais

Universidade Estadual de Mato Grosso do Sul - Curso de Ciência da Computação Disciplina: Estruturas de Dados Profª. Raquel Marcia Müller

Universidade Estadual de Mato Grosso do Sul - Curso de Ciência da Computação Disciplina: Estruturas de Dados Profª. Raquel Marcia Müller 1 Listas Lineares Dentre as estruturas de dados não primitivas, as listas lineares são as de manipulação mais simples. Uma lista linear agrupa informações referentes a um conjunto de elementos que, de

Leia mais

Estruturas de Dados Pilhas, Filas e Deques

Estruturas de Dados Pilhas, Filas e Deques Estruturas de Dados Pilhas, Filas e Deques Prof. Eduardo Alchieri Estruturas de Dados Pilhas Pilhas Lista LIFO (Last In, First Out) Os elementos são colocados na estrutura (pilha) e retirados em ordem

Leia mais

- UNIVERSIDADE DO VALE DO RIO DOS SINOS CIÊNCIAS EXATAS E TECNOLÓGICAS Curso: Informática / Ciência da Computação

- UNIVERSIDADE DO VALE DO RIO DOS SINOS CIÊNCIAS EXATAS E TECNOLÓGICAS Curso: Informática / Ciência da Computação Programação 1I Prof. Osório Fila / Alocação Estática Pag.: 1 - UNIVERSIAE O VALE O RIO OS SINOS IÊNIAS EXATAS E TENOLÓGIAS urso: Informática / iência da omputação Programação II isciplina: Linguagem de

Leia mais

FACULDADE CAMPO LIMPO PAULISTA MESTRADO EM CIÊNCIA DA COMPUTAÇÃO. Projeto e Análise de Algoritmos II Lista de Exercícios 2

FACULDADE CAMPO LIMPO PAULISTA MESTRADO EM CIÊNCIA DA COMPUTAÇÃO. Projeto e Análise de Algoritmos II Lista de Exercícios 2 FACULDADE CAMPO LIMPO PAULISTA MESTRADO EM CIÊNCIA DA COMPUTAÇÃO Projeto e Análise de Algoritmos II Lista de Exercícios 2 Prof. Osvaldo. 1. Desenvolva algoritmos para as operações abaixo e calcule a complexidade

Leia mais

Armazenamento de Dados. Prof. Antonio Almeida de Barros Junior

Armazenamento de Dados. Prof. Antonio Almeida de Barros Junior Armazenamento de Dados Prof. Antonio Almeida de Barros Junior 1 Armazenamento de Dados Todos os dados que utilizamos até o momento, ficavam armazenados apenas na memória. Ao final da execução dos programas,

Leia mais

Sistema de Arquivos. Ambientes Operacionais. Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br www.inf.pucrs.br/~stoscani

Sistema de Arquivos. Ambientes Operacionais. Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br www.inf.pucrs.br/~stoscani Sistema de Arquivos Ambientes Operacionais Prof. Simão Sirineo Toscani stoscani@inf.pucrs.br www.inf.pucrs.br/~stoscani Gerência de Arquivos É um dos serviços mais visíveis do SO. Arquivos são normalmente

Leia mais

DAS5102 Fundamentos da Estrutura da Informação

DAS5102 Fundamentos da Estrutura da Informação Pilhas A estrutura de dados Pilha emula a forma de organização de objetos intuitiva que é utilizada diariamente nos mais diversos contextos da vida humana. Containeres são empilhados e desempilhados diariamente

Leia mais

Estrutura de Dados Pilha (Stack)

Estrutura de Dados Pilha (Stack) Estrutura de Dados Pilha (Stack) Estrutura de Dados que corresponde a uma lista sequencial com a propriedade seguinte: LIFO O primeiro elemento a entrar é o último a sair ( Last in First Out ) Operações

Leia mais

Árvores Binárias de Busca

Árvores Binárias de Busca Árvores Binárias de Busca Uma Árvore Binária de Busca T (ABB) ou Árvore Binária de Pesquisa é tal que ou T = 0 e a árvore é dita vazia ou seu nó contém uma chave e: 1. Todas as chaves da sub-árvore esquerda

Leia mais

- UNIVERSIDADE DO VALE DO RIO DOS SINOS CIÊNCIAS EXATAS E TECNOLÓGICAS Curso: Informática / Ciência da Computação

- UNIVERSIDADE DO VALE DO RIO DOS SINOS CIÊNCIAS EXATAS E TECNOLÓGICAS Curso: Informática / Ciência da Computação Programação 1I Prof. Osório Árvores Binárias Pag.: 1 - UNIVERSIDADE DO VALE DO RIO DOS SINOS CIÊNCIAS EXATAS E TECNOLÓGICAS Curso: Informática / Ciência da Computação Programação II Disciplina: Linguagem

Leia mais

ARQUIVOS. Os arquivos criados em meios magnéticos poderão ser acessados para leitura e escrita na forma seqüencial, direta ou indexada.

ARQUIVOS. Os arquivos criados em meios magnéticos poderão ser acessados para leitura e escrita na forma seqüencial, direta ou indexada. Texto retirado e adaptado da apostila A Linguagem Pascal, disponível no site http://www.portaldaprogramacao.com (autor: desconhecido) ARQUIVOS Anteriormente, foi estudado o conceito de tabelas em memória

Leia mais

Representação de Algoritmos - Linguagens de Programação

Representação de Algoritmos - Linguagens de Programação Representação de Algoritmos - Linguagens de Programação A representação de algoritmos em uma pseudo-linguagem mais próxima às pessoas é bastante útil principalmente quando o problema a ser tratado envolve

Leia mais

PROGRAMAÇÃO II 3. PILHA DINÂMICA

PROGRAMAÇÃO II 3. PILHA DINÂMICA 3. PILHA DINÂMICA PROGRAMAÇÃO II Prof. Jean Eduardo Glazar Uma pilha é um tipo especial de Pilha na quais todas as inserções e remoções são feitas na primeira posição, que é chamada de topo. Outro nome

Leia mais

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008 Tabela de Símbolos Análise Semântica A Tabela de Símbolos Fabiano Baldo Após a árvore de derivação, a tabela de símbolos é o principal atributo herdado em um compilador. É possível, mas não necessário,

Leia mais

Algoritmos e Estrutura de Dados II

Algoritmos e Estrutura de Dados II Universidade Federal do Vale do São Francisco Algoritmos e Estrutura de Dados II Professor: Marcelo Santos Linder E-mail: marcelo.linder@univasf.edu.br Ementa Árvores B, grafos e tabelas de hash: alocação

Leia mais

FUNDAÇÃO EDUCACIONAL DE ITUIUTABA

FUNDAÇÃO EDUCACIONAL DE ITUIUTABA FUNDAÇÃO EDUCACIONAL DE ITUIUTABA ASSOCIADA À UNIVERSIDADE DO ESTADO DE MINAS GERAIS CURSO DE SISTEMA DE INFORMAÇÃO PILHA E FILA Prof. Walteno Martins Parreira Júnior www.waltenomartins.com.br waltenomartins@yahoo.com

Leia mais

Prof. Yandre Maldonado - 1 PONTEIROS. Prof. Yandre Maldonado e Gomes da Costa

Prof. Yandre Maldonado - 1 PONTEIROS. Prof. Yandre Maldonado e Gomes da Costa Prof. Yandre Maldonado - 1 PONTEIROS Prof. Yandre Maldonado e Gomes da Costa PONTEIROS Prof. Yandre Maldonado - 2 Ponteiro é uma variável que possui o endereço de outra variável; É um poderoso recurso

Leia mais

Trabalho 3: Agenda de Tarefas

Trabalho 3: Agenda de Tarefas INF 1620 Estruturas de Dados Semestre 08.2 Trabalho 3: Agenda de Tarefas O objetivo deste trabalho é a implementação de um conjunto de funções para a manipulação de uma agenda de tarefas diárias, de forma

Leia mais

A memória é um recurso fundamental e de extrema importância para a operação de qualquer Sistema Computacional; A memória trata-se de uma grande

A memória é um recurso fundamental e de extrema importância para a operação de qualquer Sistema Computacional; A memória trata-se de uma grande A memória é um recurso fundamental e de extrema importância para a operação de qualquer Sistema Computacional; A memória trata-se de uma grande região de armazenamento formada por bytes ou palavras, cada

Leia mais

Algumas notas sobre PASCAL

Algumas notas sobre PASCAL Algumas notas sobre PASCAL PARTE I Anjolina Grisi de Oliveira 1 Um programa em PASCAL Esse texto inclui algumas notas sobre a linguagem PASCAL. As diferenças existentes entre os diversos compiladores não

Leia mais

EAD Fila. - algumas operações realizam-se na frente/cabeça e outras na cauda da Fila

EAD Fila. - algumas operações realizam-se na frente/cabeça e outras na cauda da Fila EAD Fila - os seus elementos são processados por ordem de chegada: - o primeiro elemento a entrar na Fila é o primeiro a sair - FIFO ( First In First Out ). - algumas operações realizam-se na frente/cabeça

Leia mais

MÉTODOS DE ORDENAÇÃO

MÉTODOS DE ORDENAÇÃO UNIÃO DE TECNOLOGIA E ESCOLAS DE SANTA CATARINA Tecnologia em Processamento de Dados MÉTODOS DE ORDENAÇÃO Tecnologia em Processamento de Dados (Pascal) Jurandir Steffens Acadêmico Glauco Vinicius Scheffel

Leia mais

PROGRAMAÇÃO II 3. FILA DINÂMICA

PROGRAMAÇÃO II 3. FILA DINÂMICA 3. FILA DINÂMICA PROGRAMAÇÃO II Prof. Jean Eduardo Glazar Uma fila é um tipo especial de lista na qual todas as inserções são feitas sempre depois do fim e as deleções no início. Por isso também recebe

Leia mais

Organização de Computadores 1

Organização de Computadores 1 Organização de Computadores 1 4 SUPORTE AO SISTEMA OPERACIONAL Prof. Luiz Gustavo A. Martins Sistema Operacional (S.O.) Programa responsável por: Gerenciar os recursos do computador. Controlar a execução

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Programação Introdução a Linguagem C Construções Básicas Programa em C #include int main ( ) { Palavras Reservadas } float celsius ; float farenheit ; celsius = 30; farenheit = 9.0/5

Leia mais

2ª Lista de Exercícios

2ª Lista de Exercícios Universidade Federal de Minas Gerais Departamento de Ciência da Computação Algoritmos e Estruturas de Dados II (Turmas M, N, W, F) 1º Semestre de 2012 Profs. Camilo Oliveira, Gisele Pappa, Ítalo Cunha,

Leia mais

Fundamentos de Sistemas Operacionais

Fundamentos de Sistemas Operacionais Fundamentos de Sistemas Operacionais Sistema de Arquivos - II Prof. Galvez Implementação de Arquivos Arquivos são implementados através da criação, para cada arquivo no sistema, de uma estrutura de dados

Leia mais

Linguagem de Programação

Linguagem de Programação Linguagem de Programação Aula 10 Arquivos Universidade Federal de Santa Maria Colégio Agrícola de Frederico Westphalen Curso Técnico em Informática Prof. Bruno B. Boniati www.cafw.ufsm.br/~bruno Persistência

Leia mais

Organização de Arquivos

Organização de Arquivos Classificação e Pesquisa de Dados Aula 2 Organização de s: s Sequenciais e s Sequenciais Indexados UFRGS INF01124 Organização de s Propósito Estudo de técnicas de armazenamento e recuperação de dados em

Leia mais

Estrutura da linguagem de programação C Prof. Tiago Eugenio de Melo tiago@comunidadesol.org

Estrutura da linguagem de programação C Prof. Tiago Eugenio de Melo tiago@comunidadesol.org Estrutura da linguagem de programação C Prof. Tiago Eugenio de Melo tiago@comunidadesol.org Breve Histórico A linguagem de programação C foi criada na década de 70, por Dennis Ritchie, que a implementou,

Leia mais

Notas da Aula 4 - Fundamentos de Sistemas Operacionais

Notas da Aula 4 - Fundamentos de Sistemas Operacionais Notas da Aula 4 - Fundamentos de Sistemas Operacionais 1. Threads Threads são linhas de execução dentro de um processo. Quando um processo é criado, ele tem uma única linha de execução, ou thread. Esta

Leia mais

MEMÓRIA. A memória do computador pode ser dividida em duas categorias:

MEMÓRIA. A memória do computador pode ser dividida em duas categorias: Aula 11 Arquitetura de Computadores - 20/10/2008 Universidade do Contestado UnC/Mafra Sistemas de Informação Prof. Carlos Guerber MEMÓRIA Memória é um termo genérico usado para designar as partes do computador

Leia mais

- UNIVERSIDADE DO VALE DO RIO DOS SINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS (C6) Curso: Informática

- UNIVERSIDADE DO VALE DO RIO DOS SINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS (C6) Curso: Informática Programação 1I Prof. Osório Definição do Trabalho Prático (T.P. GRAU B) Pag.: 1 - UNIVERSIDADE DO VALE DO RIO DOS SINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS (C6) Curso: Informática PROGRAMAÇÃO II Disciplina:

Leia mais

Componentes da linguagem C++

Componentes da linguagem C++ Componentes da linguagem C++ C++ é uma linguagem de programação orientada a objetos (OO) que oferece suporte às características OO, além de permitir você realizar outras tarefas, similarmente a outras

Leia mais

Notas de Aula de Algoritmos e Programação de Computadores

Notas de Aula de Algoritmos e Programação de Computadores Notas de Aula de Algoritmos e Programação de Computadores FLÁVIO KEIDI MIYAZAWA com a colaboração de TOMASZ KOWALTOWSKI Instituto de Computação - UNICAMP Versão 2000.1 Estas notas de aula não devem ser

Leia mais

Lista de Exercícios da 3ª Unidade. ( Ponteiros, Alocação dinâmica, Arquivos, Estruturas de Dados)

Lista de Exercícios da 3ª Unidade. ( Ponteiros, Alocação dinâmica, Arquivos, Estruturas de Dados) Lista de Exercícios da 3ª Unidade ( Ponteiros, Alocação dinâmica, Arquivos, Estruturas de Dados) 1. (Seg. chamada - 2014.1) Construa um programa em C que realize as seguintes operações: a) Faça uma função

Leia mais

Modelagem e Implementação (Incremental de um Software para Controle) de Aquário de Peixes

Modelagem e Implementação (Incremental de um Software para Controle) de Aquário de Peixes Modelagem e Implementação de Aquário de Peixes- por Jorge Fernandes - Página 1 Modelagem e Implementação (Incremental de um Software para Controle) de Aquário de Peixes Jorge Fernandes Natal, Agosto de

Leia mais

Conceitos de Linguagens de Programação

Conceitos de Linguagens de Programação Conceitos de Linguagens de Programação Aula 07 Nomes, Vinculações, Escopos e Tipos de Dados Edirlei Soares de Lima Introdução Linguagens de programação imperativas são abstrações

Leia mais

Variáveis Compostas Heterogêneas. Variável Composta Heterogênea. Variável Composta Heterogênea

Variáveis Compostas Heterogêneas. Variável Composta Heterogênea. Variável Composta Heterogênea Variáveis Compostas Heterogêneas Variável Composta Heterogênea Conjunto de dados logicamente relacionados, mas de tipos diferentes. Também chamada de registro. Variável Composta Heterogênea 1 Declaração

Leia mais

ESTRUTURAS DE DADOS I. Notas de Aula. Prof. Dr. Gilberto Nakamiti

ESTRUTURAS DE DADOS I. Notas de Aula. Prof. Dr. Gilberto Nakamiti ESTRUTURAS DE DADOS I Notas de Aula 1 SUMÁRIO 1. INTRODUÇÃO... 2 1.1 Array (vetores)... 2 2. BUSCA DE ELEMENTOS... 3 2.1 Busca Seqüencial... 3 2.2 Busca Binária... 3 2.3 Busca Indexada... 3 2.4 Busca Hash...

Leia mais

Estruturas de Dados. Parte dos slides a seguir são adaptações, extensões e traduções para C dos originais:

Estruturas de Dados. Parte dos slides a seguir são adaptações, extensões e traduções para C dos originais: Estruturas de Dados Pilhas Prof. Ricardo J. G. B. Campello Créditos Parte dos slides a seguir são adaptações, extensões e traduções para C dos originais: disponíveis em http://ww3.datastructures.net/ cedidos

Leia mais

Análises Geração RI (representação intermediária) Código Intermediário

Análises Geração RI (representação intermediária) Código Intermediário Front-end Análises Geração RI (representação intermediária) Código Intermediário Back-End Geração de código de máquina Sistema Operacional? Conjunto de Instruções do processador? Ambiente de Execução O

Leia mais

UNIP UNIVERSIDADE PAULISTA INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA (ICET) CURSO DE CIÊNCIAS DA COMPUTAÇÃO. O Paradigma da Orientação a Objeto

UNIP UNIVERSIDADE PAULISTA INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA (ICET) CURSO DE CIÊNCIAS DA COMPUTAÇÃO. O Paradigma da Orientação a Objeto UNIP UNIVERSIDADE PAULISTA INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA (ICET) CURSO DE CIÊNCIAS DA COMPUTAÇÃO O Paradigma da Orientação a Objeto Apresentada em Cumprimento Parcial dos Requerimentos para

Leia mais

Apostila 03 Conceito de Filas

Apostila 03 Conceito de Filas Curso: Bacharelado em Ciência da Computação - BCC Disciplina: (1479A) Estruturas de Dados I ED1 Professora: Simone das Graças Domingues Prado e-mail: simonedp@fc.unesp.br home-page: wwwp.fc.unesp.br/~simonedp/ed1bcc.htm

Leia mais

Desenvolvimento de um Simulador de Gerenciamento de Memória

Desenvolvimento de um Simulador de Gerenciamento de Memória Desenvolvimento de um Simulador de Gerenciamento de Memória Ricardo Mendes do Nascimento. Ciência da Computação Universidade Regional Integrada do Alto Uruguai e das Missões (URI) Santo Ângelo RS Brasil

Leia mais

E/S CPU. Memória (Instruções e dados) 2 PARADIGMA IMPERATIVO. Instruções e dados. Resultados das operações. Unidade lógica e aritmética

E/S CPU. Memória (Instruções e dados) 2 PARADIGMA IMPERATIVO. Instruções e dados. Resultados das operações. Unidade lógica e aritmética 2 PARADIGMA IMPERATIVO 2.1 CONCEITO As linguagens que pertencem ao paradigma imperativo tomam por base a perspectiva da máquina. Ou seja, no modo como o computador executa programas em linguagem de máquina.

Leia mais

Neste capítulo discutiremos o que é uma DLL, seus aspectos e tipos e ainda, porquê é tão importante para as aplicações Windows

Neste capítulo discutiremos o que é uma DLL, seus aspectos e tipos e ainda, porquê é tão importante para as aplicações Windows DINAMIC LINK LIBRARIES Capítulo 7 Neste capítulo discutiremos o que é uma DLL, seus aspectos e tipos e ainda, porquê é tão importante para as aplicações Windows O QUE É UMA DLL? Dinamic Link Libraries

Leia mais

Exercícios Gerência de Memória

Exercícios Gerência de Memória Exercícios Gerência de Memória 1) Considerando o uso de particionamento Buddy em um sistema com 4 GB de memória principal, responda as seguintes perguntas: a) Esboce o gráfico que representa o uso da memória

Leia mais

Tipos agregados. Tipos estruturados

Tipos agregados. Tipos estruturados Tipos agregados ou Tipos estruturados permitem a implementação de agrupamentos de dados. exemplos: lista de valores que representam as taxas mensais de inflação durante um ano; ficha de cadastro de um

Leia mais

7. ESTRUTURAS DE DADOS ESTÁTICAS E DINÂMICAS

7. ESTRUTURAS DE DADOS ESTÁTICAS E DINÂMICAS 7. ESTRUTURAS DE DADOS ESTÁTICAS E DINÂMICAS Até... 7.1 Alocação Estática Alocação de Espaço em Memória Como já foi visto anteriormente, a memória de um computador compõe-se de uma sequência de palavras,

Leia mais

Índice. Capítulo 2 Estrutura de Dados sequencial com armazenamento sequencial

Índice. Capítulo 2 Estrutura de Dados sequencial com armazenamento sequencial Índice i Índice Capítulo 2 Estrutura de Dados sequencial com armazenamento sequencial 1. A Estrutura Abstrata de Dados Lista... 1 1.1. Definição... 1 1.2. Implementação de Listas utilizando armazenamento

Leia mais

Na resolução de um problema por meio de um programa, a primeira providência é conceber um algoritmo adequado.

Na resolução de um problema por meio de um programa, a primeira providência é conceber um algoritmo adequado. Estrutura de Dados Introdução Extraído de : Estruturas de Dados Homero L. Pícollo Na resolução de um problema por meio de um programa, a primeira providência é conceber um algoritmo adequado. A eficiência

Leia mais

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP) Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,

Leia mais

Índices* Professora Rosane Minghim. * Baseado no material de Leandro C. Cintra e M. C. F. de Oliveira. Fonte: Folk & Zoelick, File Structures.

Índices* Professora Rosane Minghim. * Baseado no material de Leandro C. Cintra e M. C. F. de Oliveira. Fonte: Folk & Zoelick, File Structures. Índices* Professora Rosane Minghim * Baseado no material de Leandro C. Cintra e M. C. F. de Oliveira. Fonte: Folk & Zoelick, File Structures. Índice Em geral, um índice fornece mecanismos para localizar

Leia mais

Avaliação de Expressões

Avaliação de Expressões valiação de Expressões valiação de Expressões - Como efetuar o cálculo de uma expressão em um computador? Exemplo: / B C D + E Regras usuais da matemática. Os parênteses alteram a ordem das expressões:

Leia mais

ESTRUTURA DE DADOS PILHA

ESTRUTURA DE DADOS PILHA ESTRUTURA DE DADOS PILHA CONCEITO DE PILHAS - Pilhas são listas lineares onde a inserção de um novo item ou a remoção de um item já existente se dá em uma única extremidade, no topo. Pilha vazia Insere(A)

Leia mais

Introdução. A verificação de tipos pode ser estática e dinâmica

Introdução. A verificação de tipos pode ser estática e dinâmica Análise Semântica Introdução Verifica se as construções sintaticamente corretas possuem significado lógico dentro da linguagem Verifica a consistência da declaração e uso dos identificadores Além disso,

Leia mais

Memória Flash. PdP. Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos

Memória Flash. PdP. Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos TUTORIAL Memória Flash Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006 PdP Pesquisa e Desenvolvimento de Produtos http://www.maxwellbohr.com.br contato@maxwellbohr.com.br

Leia mais

A4 Projeto Integrador e Lista de Jogos

A4 Projeto Integrador e Lista de Jogos A4 Projeto Integrador e Lista de Jogos 1ª ETAPA PROJETO INTEGRADOR (2 pontos na A4) Como discutido em sala de aula, a disciplina de algoritmos I também fará parte do projeto integrador, para cada grupo

Leia mais

PROG. DE COMPUTADORES II SI Arquivos

PROG. DE COMPUTADORES II SI Arquivos 1 PROG. DE COMPUTADORES II SI Arquivos Arquivos Permitem que gravemos nossas informações em dispositivos físicos Pendrive HD Estão organizados logicamente em registros Cada registro é similar a um campo

Leia mais

Tipos de Dados, Tipos Abstratos de Dados Estruturas de Dados

Tipos de Dados, Tipos Abstratos de Dados Estruturas de Dados Tipos de Dados, Tipos Abstratos de Dados Estruturas de Dados Tipo de dados, tipo abstrato de dados, estruturas de dados Termos parecidos, mas com significados diferentes Tipo de dado Em linguagens de programação

Leia mais

1 Funções básicas de implementação de arquivos

1 Funções básicas de implementação de arquivos 1 Funções básicas de implementação de arquivos 1.1 Definindo registros Depois de um objeto do mundo real ter sido modelado, ou seja, após seus atributos importantes (e relevantes) terem sido identificados,

Leia mais

Programação Estruturada. Programação Estruturada. Idéias Básicas da Programação Estruturada

Programação Estruturada. Programação Estruturada. Idéias Básicas da Programação Estruturada Programação Estruturada Programação Estruturada Paradigmas de Linguagens de Programação As linguagens desse paradigma são muitas vezes chamadas de linguagens convencionais, procedurais ou imperativas.

Leia mais

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Um Sistema Gerenciador de Banco de Dados (SGBD) é constituído por um conjunto de dados associados a um conjunto de programas para acesso a esses

Leia mais

SOP - TADS Sistemas de Arquivos Cap 4 Tanenmbaum

SOP - TADS Sistemas de Arquivos Cap 4 Tanenmbaum SOP - TADS Sistemas de Arquivos Cap 4 Tanenmbaum Prof. Ricardo José Pfitscher dcc2rjp@joinville.udesc.br Material cedido por: Prof. Rafael Rodrigues Obelheiro Prof. Maurício Aronne Pillon Cronograma Introdução

Leia mais

Pilhas. Profa Morganna Diniz

Pilhas. Profa Morganna Diniz Pilhas Profa Morganna Diniz Pilhas Geralmente pilhas são úteis em situações em que dados devem ser recuperados em ordem inversa a do armazenamento É uma estrutura de dados linear que permite acesso por

Leia mais

Linguagens de Programação

Linguagens de Programação Linguagens de Programação Prof. Miguel Elias Mitre Campista http://www.gta.ufrj.br/~miguel Parte IV Introdução à Programação em C++ (Continuação) Relembrando da Última Aula... Funções Classes de armazenamento

Leia mais

EXEMPLO: Processo para atualização da hora Processo para monitoramento da necessidade de proteção de tela. Figura 4-1 - Exemplo

EXEMPLO: Processo para atualização da hora Processo para monitoramento da necessidade de proteção de tela. Figura 4-1 - Exemplo 4 PROCESSOS Os primeiros sistemas operacionais permitiam que apenas um processo fosse executado por vez. Dessa maneira, este processo tinha todo o sistema computacional a sua disposição. Os atuais sistemas

Leia mais

3.4 Representação física: alocação encadeada (dinâmica) Ptlista - variável ponteiro externa que indica o início da lista.

3.4 Representação física: alocação encadeada (dinâmica) Ptlista - variável ponteiro externa que indica o início da lista. 3.4 Representação física: alocação encadeada (dinâmica) As posições de memória são alocadas (ou desalocadas) na medida em que são necessárias (ou dispensadas). Os nós de uma lista encontram-se aleatoriamente

Leia mais

Algoritmos e Programação _ Departamento de Informática

Algoritmos e Programação _ Departamento de Informática 16 ARQUIVOS Um arquivo corresponde a um conjunto de informações (exemplo: uma estrutura de dados-registro), que pode ser armazenado em um dispositivo de memória permanente, exemplo disco rígido. As operações

Leia mais

Filas COMANDOS EM C++ PARA IMPLEMENTAÇÃO DE UMA FILA. Biblioteca padrão

Filas COMANDOS EM C++ PARA IMPLEMENTAÇÃO DE UMA FILA. Biblioteca padrão <queue> Filas Uma fila é uma lista linear em que as inserções são realizadas num extremo, ficando as remoções restritas a outro. palavra da língua inglesa, significa fila. Por tradição, as duas operações básicas

Leia mais

Vetores. Vetores. Figura 1 Exemplo de vetor com 10 elementos

Vetores. Vetores. Figura 1 Exemplo de vetor com 10 elementos Vetores Nos capítulos anteriores estudamos as opções disponíveis na linguagem C para representar: Números inteiros em diversos intervalos. Números fracionários com várias alternativas de precisão e magnitude.

Leia mais

Título: Controle de Estoque (componente de especificação)

Título: Controle de Estoque (componente de especificação) Título: Controle de Estoque (componente de especificação) Palavras-chave: estoque, inventário, controle Autoria e data: Marcelo Pessôa 02 de junho de 2014 Versão: 1.0 Tecnologia: Independe de tecnologia

Leia mais

LISTA DE EXERCÍCIOS: 3ª Unidade. Registros e Arquivos

LISTA DE EXERCÍCIOS: 3ª Unidade. Registros e Arquivos LISTA DE EXERCÍCIOS: 3ª Unidade Registros e Arquivos 1) Faça um programa que leia os dados de 10 funcionários de uma empresa usando um registro do tipo funcionário, e após a sua leitura, imprima na tela.

Leia mais

Capítulo 2: Introdução à Linguagem C

Capítulo 2: Introdução à Linguagem C Capítulo 2: Introdução à Linguagem C INF1005 Programação 1 Pontifícia Universidade Católica Departamento de Informática Programa Programa é um algoritmo escrito em uma linguagem de programação. No nosso

Leia mais

Árvore B UNITINS ANÁLISE E DESENVOLVIMENTO DE SISTEMAS 3º PERÍODO 43

Árvore B UNITINS ANÁLISE E DESENVOLVIMENTO DE SISTEMAS 3º PERÍODO 43 AULA A 3 ESTRUTURA RA DE DADOS Árvore B Esperamos que, ao final desta aula, você seja capaz de: identificar as vantagens da árvore B em relação às árvores binária de busca e AVL; conhecer as funções de

Leia mais

ESTRUTURA DE DADOS -VARIÁVEIS COMPOSTAS. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br

ESTRUTURA DE DADOS -VARIÁVEIS COMPOSTAS. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br ESTRUTURA DE DADOS -VARIÁVEIS COMPOSTAS Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br ROTEIRO Variáveis compostas homogêneas Arrays Vetores Matrizes Variáveis compostas heterogêneas Registros

Leia mais

CURSO de CIÊNCIA DA COMPUTAÇÃO - Gabarito

CURSO de CIÊNCIA DA COMPUTAÇÃO - Gabarito UNIVERSIDADE FEDERAL FLUMINENSE TRANSFERÊNCIA 2 o semestre letivo de 2005 e 1 o semestre letivo de 2006 CURSO de CIÊNCIA DA COMPUTAÇÃO - Gabarito Verifique se este caderno contém : INSTRUÇÕES AO CANDIDATO

Leia mais

PROVA DE NOÇÕES DE MICROINFORMÁTICA

PROVA DE NOÇÕES DE MICROINFORMÁTICA 18 PROVA DE NOÇÕES DE MICROINFORMÁTICA AS QUESTÕES DE 41 A 60 CONSIDERAM O ESQUEMA PADRÃO DE CONFIGURAÇÃO DO SISTEMA OPERACIONAL MICROSOFT WINDOWS ME E DAS FERRAMENTAS MICROSOFT WINDOWS EXPLORER, MICRO-

Leia mais

BUSCA EM LISTAS LISTAS SEQÜENCIAIS, LISTAS SIMPLESMENTE E DUPLAMENTE ENCADEADAS E LISTAS CIRCULARES

BUSCA EM LISTAS LISTAS SEQÜENCIAIS, LISTAS SIMPLESMENTE E DUPLAMENTE ENCADEADAS E LISTAS CIRCULARES BUSCA EM LISTAS LISTAS SEQÜENCIAIS, LISTAS SIMPLESMENTE E DUPLAMENTE ENCADEADAS E LISTAS CIRCULARES ALGORITMOS DE BUSCA EM LISTAS COM ALOCAÇÃO SEQÜENCIAL Busca em Listas Lineares A operação de busca é

Leia mais

Resumo da Introdução de Prática de Programação com C. A Linguagem C

Resumo da Introdução de Prática de Programação com C. A Linguagem C Resumo da Introdução de Prática de Programação com C A Linguagem C O C nasceu na década de 70. Seu inventor, Dennis Ritchie, implementou-o pela primeira vez usando um DEC PDP-11 rodando o sistema operacional

Leia mais

Sistemas Operacionais. Andrique Amorim www.andrix.com.br professor@andrix.com.br. Gerência de Arquivos

Sistemas Operacionais. Andrique Amorim www.andrix.com.br professor@andrix.com.br. Gerência de Arquivos Andrique Amorim www.andrix.com.br professor@andrix.com.br Gerência de Arquivos Gerência de Arquivos Um sistema operacional tem por finalidade permitir que o usuários do computador executem aplicações,

Leia mais

Disciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto

Disciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto Disciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto Introdução Processo cooperativo é aquele que pode afetar outros processos em execução no sistema Ou ser por eles afetado Processos

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Gerência de Arquivos Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Sumário Conceituação de arquivos Implementação do sistemas de arquivo Introdução Sistema de

Leia mais

BANCO DE DADOS. Introdução a Banco de Dados. Conceitos BásicosB. Engenharia da Computação UNIVASF. Aula 1. Breve Histórico

BANCO DE DADOS. Introdução a Banco de Dados. Conceitos BásicosB. Engenharia da Computação UNIVASF. Aula 1. Breve Histórico Banco de Dados // 1 Banco de Dados // 2 Conceitos BásicosB Engenharia da Computação UNIVASF BANCO DE DADOS Aula 1 Introdução a Banco de Dados Campo representação informatizada de um dado real / menor unidade

Leia mais

Organização de arquivos

Organização de arquivos Organização de arquivos Por que ver sistema de arquivos? O sistema de arquivos é quem realmente se responsabiliza por guardar os dados que um aplicativo ou mesmo o banco de dados gerencia. Não é tarefa

Leia mais

Exercícios Gerência de Memória

Exercícios Gerência de Memória Exercícios Gerência de Memória 1) Considerando o uso de particionamento Buddy em um sistema com 4 GB de memória principal, responda as seguintes perguntas: a) Esboce o gráfico que representa o uso da memória

Leia mais

Estruturas de Armazenamento e Indexação. Rafael Lage Moreira Barbosa 10.1.4217

Estruturas de Armazenamento e Indexação. Rafael Lage Moreira Barbosa 10.1.4217 Estruturas de Armazenamento e Indexação Rafael Lage Moreira Barbosa 10.1.4217 Estruturas de Armazenamento Banco de Dados são armazenados fisicamente como arquivos de registro, que em geral ficam em discos

Leia mais

Manipulação de Arquivos em Pascal

Manipulação de Arquivos em Pascal Manipulação de Arquivos em Pascal Estrutura de Dados II Aula 03 UFS - DComp Adaptados a partir do material da Profa. Kenia Kodel Cox 1 Para implementar programa infantil para ordenação (alfabética) de

Leia mais