SlideShare ist ein Scribd-Unternehmen logo
1 von 36
Arquivos Sequenciais
  Ordenados por Link
       Estrutura de Dados II


Unidade 06
             UFS - DComp - Prof. Kenia Kodel   1
Flores?
O verbo educar é
originário do latim e quer
dizer extrair de dentro.
Logo, a educação não se
constitui em mero
estabelecimento de
informações, mas sim de
se trabalhar as
potencialidades do ser, a
fim de que floresçam.
       UFS - DComp - Prof. Kenia Kodel   2
O segredo é não
correr atrás das
  borboletas... É
 cuidar do jardim
  para que elas
venham até você.
                    .


 Mário Quintana
    UFS - DComp - Prof. Kenia Kodel   3
Arquivos Sequenciais
Podem ser:
1. Desordenados
2. Ordenados, por chave(s)
    2.1. Fisicamente
    2.2. Por links (lógica)
O que é um arquivo

        sequencial ordenado

        por link?




UFS - DComp - Prof. Kenia Kodel   5
Arquivo Sequencial
     Ordenado por Link
 São arquivos sequenciais, ou seja, o
 acesso a um determinado registro implica
 na varredura de todos os itens que o
 antecedem.
 São ordenados logicamente – a partir de
 campo que indica o endereço do próximo
 registro em ordem – campo link.

             UFS - DComp - Prof. Kenia Kodel
Arquivo Sequencial
    PACIENTE
                     Ordenado por Link
              SANGUE   RH       DOAÇÃO              CONTATO   PESO   LINK


0                                                                      2

1     Zé         A      +      12/12/03         (79)223.1542   80     -1

2    Beto        B       -     12/10/02 (79)8801.2017          70      4
      Gil
3                O      +      11/09/04 (79)9941.1388          72      5

4    Clô        AB       -     02/02/05 (81)2212.6711          95      3
5    Sara        A       -     10/01/04 (11)2213.0909          73      1

                        UFS - DComp - Prof. Kenia Kodel
Em aplicações computacionais
     que manipulam arquivos
     sequenciais ordenados por
     link, que operações são úteis
     para manipulação da
     respectiva base de dados?




UFS - DComp - Prof. Kenia Kodel      8
Operações
               sobre Arquivos
            Sequenciais Ordenados
1.   Inserção
2.   Remoção
3.   Consulta
4.   Alteração
5. Classificação?
6. Recuperação ?

                 UFS - DComp - Prof. Kenia Kodel   9
Inclusão em Arquivos
 Sequenciais Ordenados por Link
Na inserção em arquivos ordenados por links:
(1) o novo registro é inserido fisicamente no final;
(2) são identificados os registros antecessor e
sucessor (lógicos) do novo registro (ponto de
inserção);
(3) o link do antecessor deve apontar para o
endereço do novo registro e
(4) o link do novo registro deve apontar para o
sucessor.
                 UFS - DComp - Prof. Kenia Kodel
Arquivo Sequencial
    PACIENTE
                  Ordenado por Link
               SANGUE    RH       DOAÇÃO            CONTATO    PESO   LINK
       

0                                                                      2
1     Zé         A       +      12/12/03        (79)223.1542   80     -1
2    Beto        B       -      12/10/02       (79)8801.2017   70      4
3     Gil        O       +      11/09/04       (79)9941.1388   72      5
4    Clô        AB        -     02/02/05       (81)2212.6711   95      3
5    Sara       A         -     10/01/04       (11)2213.0909   73      1


                Como efetuar a inserção de
                ANA, EVA e TEL no arquivo
                dado?
                        UFS - DComp - Prof. Kenia Kodel
Elaborar algoritmo para efetuar
inclusão em arquivos sequenciais
                   ordenados por links:



      Cuidando
     do jardim!!!

      UFS - DComp - Prof. Kenia Kodel
Elaborar algoritmo para efetuar inclusão em
   arquivos sequenciais ordenados por links:
type
  TpCliente = record
                Nome: string[5];
                Link: longint;
              end;
var
  Arq: file of TpCliente;
  Reg, RNovo, RAux: TpCliente;
  Anterior, PtIns: longint;
begin
  {associacao a nome externo}
  assign(Arq,'Entrada.dat');
  {abertura de arquivo}
  {$I-} reset(Arq); {$I+}
  if IOResult <> 0 then rewrite(Arq);
  ...
                UFS - DComp - Prof. Kenia Kodel
Elaborar algoritmo para efetuar inclusão em
   arquivos sequenciais ordenados por links:
  {inicializacao}
  Anterior:=0;
  if filesize(Arq)<>0 then
    begin seek(Arq,0); read(Arq,Reg);
      PtIns:=Reg.Link end
  else begin PtIns:=-1; seek(Arq,0);
      Raux.Chave:=’-1’;
      RAux.Link:=-1; write(Arq,RAux); end;
  {inclusao do novo registro}
  writeln('Nome: '); readln(RNovo.Nome);


                 UFS - DComp - Prof. Kenia Kodel
Elaborar algoritmo para efetuar inclusão em arquivos
    seqüenciais ordenados por links:
repeat
    if PtIns<>-1 then begin
      seek(Arq,PtIns); read(Arq,Reg); end;
    if (Reg.Nome>RNovo.Nome) or
       (PtIns=-1) then begin
      {atualizando anterior}
      seek(Arq,Anterior); read(Arq,RAux);
      RAux.Link:=filesize(Arq);
      seek(Arq,Anterior); write(Arq,RAux);
      {atualizando novo}
      RNovo.Link:=PtIns;
      seek(Arq,filesize(Arq));
      write(Arq,RNovo); break; end
    else begin
      Anterior:=PtIns; seek(Arq,PtIns);
      read(Arq,Reg); PtIns:=Reg.Link; end;
  until false;
                  UFS - DComp - Prof. Kenia Kodel
Qual o custo da operação
     de inserção em arquivo
     sequenciais ordenados
     por links?


                             Linear, no
                             pior caso.


UFS - DComp - Prof. Kenia Kodel           16
Como efetuar remoção
 em arquivos sequenciais
 ordenados por link?




UFS - DComp - Prof. Kenia Kodel   17
Arquivo Sequencial
    PACIENTE
                  Ordenado por Link
               SANGUE    RH       DOAÇÃO            CONTATO    PESO   LINK
       

0                                                                      2
1     Zé         A       +      12/12/03        (79)223.1542   80     -1
2    Beto        B       -      12/10/02       (79)8801.2017   70      4
3     Gil        O       +      11/09/04       (79)9941.1388   72      5
4    Clô        AB        -     02/02/05       (81)2212.6711   95      3
5    Sara       A         -     10/01/04       (11)2213.0909   73      1


                Como efetuar a exclusão de
                CLÔ no arquivo dado?

                        UFS - DComp - Prof. Kenia Kodel
Remoção em Arquivos
Sequenciais Ordenados por Link

 Para efetuar a exclusão em arquivos
 sequenciais ordenados por links é
 recomendada a remoção lógica dos registros,
 por meio do ajuste dos ponteiros, tomando o
 devido cuidado para posterior reutilização dos
 espaços livres.

                   UFS - DComp - Prof. Kenia Kodel
Quais os efeitos da aplicação da
           exclusão física (com
 movimentação de dados, por
      exemplo) sobre arquivos
           ordenados por link?




  UFS - DComp - Prof. Kenia Kodel   20
Elaborar algoritmo para efetuar

exclusão em arquivos sequenciais

ordenados por links:




         Cuidando
        do jardim!!!

         UFS - DComp - Prof. Kenia Kodel
Elaborar algoritmo para efetuar exclusão em
   arquivos sequenciais ordenados por links:
type
  TpCliente = record
                Chave: string[5];
                Link: longint;
              end;
var
  Arq: file of TpCliente;
  Reg, RExc, RAux: TpCliente;
  Anterior, PtExc : integer;
  Erro: integer;

                UFS - DComp - Prof. Kenia Kodel
Elaborar algoritmo para efetuar exclusão em
   arquivos seqüenciais ordenados por links:
begin
  {associacao a nome externo}
  assign(Arq,'Entrada.dat');
  {abertura de arquivo}
  {$I-} reset(Arq); {$I+}
  if IOResult <> 0 then rewrite(Arq);
  {inicializacao}
  Anterior:=0;
  {if filesize(Arq)<>0 then}
  seek(Arq,0); read(Arq,Reg); PtExc:=Reg.Link;
  writeln('Chave a excluir: ');
  readln(RExc.Chave);

                 UFS - DComp - Prof. Kenia Kodel
Elaborar algoritmo para efetuar exclusão em arquivos
    sequenciais ordenados por links:
repeat
    seek(Arq,PtExc); read(Arq,Reg);
    if (Reg.Chave=RExc.Chave) then begin
      {atualizando anterior}
      seek(Arq,Anterior);
      read(Arq,RAux); RAux.Link:=Reg.Link;
      seek(Arq,Anterior); write(Arq,RAux);
      {atualizando excluido e lista de excluidos}
      seek(Arq,0); read(Arq,Reg);
      val(Reg.Chave,RExc.Link,Erro);
      seek(Arq,PtExc); write(Arq,Reg);
      str(PtExc,Reg.Chave);
      seek(Arq,0); write(Arq,Reg); end
    else begin
      Anterior:=PtExc; seek(Arq,PtExc);
      read(Arq,Reg); PtExc:=Reg.Link; end;
  until PtExc=-1;
  {if PtExc=-1 then REGISTRO INEXISTENTE}
  close(Arq);end.
                     UFS - DComp - Prof. Kenia Kodel
Qual o custo da operação
     de remoção em arquivo
     sequenciais ordenados
     por links?


                             Linear, no
                             pior caso.


UFS - DComp - Prof. Kenia Kodel           25
Como efetuar busca em
 arquivos sequenciais
 ordenados por link?




UFS - DComp - Prof. Kenia Kodel   26
É conveniente aplicar
       busca binária em
       arquivo sequencial
       ordenado por link?




UFS - DComp - Prof. Kenia Kodel   27
Qual o custo da operação de
                   busca em arquivo sequenciais
                           ordenados por links?

Se total, linear (com o agravante da
   necessidade de deslocamento do
   dispositivo de leitura).

Se a partir de chave (específica):
   linear, no pior caso.
             UFS - DComp - Prof. Kenia Kodel   28
Operações
                sobre Arquivos
             Sequenciais Ordenados
Como efetuar a
   operação de
   alteração (edição)
   em arquivo
   sequencial
   ordenado por link?


                 UFS - DComp - Prof. Kenia Kodel   29
Operações
                 sobre Arquivos
              Sequenciais Ordenados
É preciso efetuar a
    operação de
    classificação em
    arquivo sequencial
    ordenado por link?
Isto vale para todos os
     links?
                    UFS - DComp - Prof. Kenia Kodel   30
Operações sobre Arquivos
             Sequenciais Ordenados
É preciso efetuar a
    operação de
    transferência entre
    memórias em arquivo
    sequencial ordenado
    por link?
Que estrutura usar, neste
   caso, em memória
   principal?
                     UFS - DComp - Prof. Kenia Kodel   31
Quanto de espaço de
                  armazenamento os
                  arquivo sequenciais
                  ordenados por links
                  usam?

Sendo n o tamanho dos
   dados, usam n acrescido
   do espaço necessário aos
   links.

UFS - DComp - Prof. Kenia Kodel         32
Visando garantir máxima eficiência na
   implementação de arquivos sequenciais,
   que forma de organização deve-se
   adotar? Desordenada, ordenada
   fisicamente ou ordenada por link?
   Justifique:




             Cuidando
            do jardim!!!

              UFS - DComp - Prof. Kenia Kodel   33
Quando aplicar arquivos
 sequenciais ordenados
 por link?


                      Analisar frequência das
                    operações x custo destas na
                        situação problema.




UFS - DComp - Prof. Kenia Kodel                   34
Complementa
      r Estudos...
         File Organization and Processing
                    Allan L Tharp


                Capítulo 2
       Sequential File Organization

35             UFS - DComp - Prof. Kenia Kodel
Próximo passo...

      Arquivos Diretos
       Dicionário

        UFS - DCOMP - Prof. Kenia Kodel   36

Weitere ähnliche Inhalte

Andere mochten auch

EDII02 [2012.1] Introdução (Estruturas de Dados)
EDII02 [2012.1]   Introdução (Estruturas de Dados)EDII02 [2012.1]   Introdução (Estruturas de Dados)
EDII02 [2012.1] Introdução (Estruturas de Dados)
KianeLedok
 
EDII10 [2012.1] Recuperação de Chave Secundária - Multilista
EDII10 [2012.1]   Recuperação de Chave Secundária - MultilistaEDII10 [2012.1]   Recuperação de Chave Secundária - Multilista
EDII10 [2012.1] Recuperação de Chave Secundária - Multilista
KianeLedok
 
EDII12 [2012.1] Recupera Chaves Secundárias - Árvores de Assinaturas
EDII12 [2012.1]   Recupera Chaves Secundárias - Árvores de AssinaturasEDII12 [2012.1]   Recupera Chaves Secundárias - Árvores de Assinaturas
EDII12 [2012.1] Recupera Chaves Secundárias - Árvores de Assinaturas
KianeLedok
 
EDII11 [2012.1] Recuperação de Chave Secundária - Arquivos Invertidos
EDII11 [2012.1]  Recuperação de Chave Secundária - Arquivos InvertidosEDII11 [2012.1]  Recuperação de Chave Secundária - Arquivos Invertidos
EDII11 [2012.1] Recuperação de Chave Secundária - Arquivos Invertidos
KianeLedok
 
EDII13 [2012.1] Estruturas de Busca em Texto
EDII13 [2012.1]   Estruturas de Busca em TextoEDII13 [2012.1]   Estruturas de Busca em Texto
EDII13 [2012.1] Estruturas de Busca em Texto
KianeLedok
 
EDII09 [2012.1] Arquivos Sequenciais Indexados
EDII09 [2012.1]   Arquivos Sequenciais IndexadosEDII09 [2012.1]   Arquivos Sequenciais Indexados
EDII09 [2012.1] Arquivos Sequenciais Indexados
KianeLedok
 
EDII15 [2012.1] Classificação Externa
EDII15 [2012.1]   Classificação ExternaEDII15 [2012.1]   Classificação Externa
EDII15 [2012.1] Classificação Externa
KianeLedok
 
EDII14 [2012.1] Árvores B e B+
EDII14 [2012.1]   Árvores B e B+EDII14 [2012.1]   Árvores B e B+
EDII14 [2012.1] Árvores B e B+
KianeLedok
 
Secretariado Executivo Aula 3 E 4
Secretariado Executivo  Aula  3 E 4Secretariado Executivo  Aula  3 E 4
Secretariado Executivo Aula 3 E 4
egildofarias
 

Andere mochten auch (20)

EDII02 [2012.1] Introdução (Estruturas de Dados)
EDII02 [2012.1]   Introdução (Estruturas de Dados)EDII02 [2012.1]   Introdução (Estruturas de Dados)
EDII02 [2012.1] Introdução (Estruturas de Dados)
 
EDII10 [2012.1] Recuperação de Chave Secundária - Multilista
EDII10 [2012.1]   Recuperação de Chave Secundária - MultilistaEDII10 [2012.1]   Recuperação de Chave Secundária - Multilista
EDII10 [2012.1] Recuperação de Chave Secundária - Multilista
 
Arquivos
ArquivosArquivos
Arquivos
 
EDII12 [2012.1] Recupera Chaves Secundárias - Árvores de Assinaturas
EDII12 [2012.1]   Recupera Chaves Secundárias - Árvores de AssinaturasEDII12 [2012.1]   Recupera Chaves Secundárias - Árvores de Assinaturas
EDII12 [2012.1] Recupera Chaves Secundárias - Árvores de Assinaturas
 
EDII11 [2012.1] Recuperação de Chave Secundária - Arquivos Invertidos
EDII11 [2012.1]  Recuperação de Chave Secundária - Arquivos InvertidosEDII11 [2012.1]  Recuperação de Chave Secundária - Arquivos Invertidos
EDII11 [2012.1] Recuperação de Chave Secundária - Arquivos Invertidos
 
EDII13 [2012.1] Estruturas de Busca em Texto
EDII13 [2012.1]   Estruturas de Busca em TextoEDII13 [2012.1]   Estruturas de Busca em Texto
EDII13 [2012.1] Estruturas de Busca em Texto
 
EDII09 [2012.1] Arquivos Sequenciais Indexados
EDII09 [2012.1]   Arquivos Sequenciais IndexadosEDII09 [2012.1]   Arquivos Sequenciais Indexados
EDII09 [2012.1] Arquivos Sequenciais Indexados
 
Aula 08 secretariado
Aula 08 secretariadoAula 08 secretariado
Aula 08 secretariado
 
Abcvida mapa linux
Abcvida mapa linuxAbcvida mapa linux
Abcvida mapa linux
 
Aula 02 secretariado
Aula 02 secretariadoAula 02 secretariado
Aula 02 secretariado
 
Arquivos gerenciamento e organizacao de arquivos
Arquivos gerenciamento e organizacao de arquivosArquivos gerenciamento e organizacao de arquivos
Arquivos gerenciamento e organizacao de arquivos
 
EDII15 [2012.1] Classificação Externa
EDII15 [2012.1]   Classificação ExternaEDII15 [2012.1]   Classificação Externa
EDII15 [2012.1] Classificação Externa
 
Aula 05 secretariado
Aula 05 secretariadoAula 05 secretariado
Aula 05 secretariado
 
Aula 04 secretariado
Aula 04 secretariadoAula 04 secretariado
Aula 04 secretariado
 
Aula 09 secretariado
Aula 09 secretariadoAula 09 secretariado
Aula 09 secretariado
 
Aula 10 secretariado
Aula 10 secretariadoAula 10 secretariado
Aula 10 secretariado
 
EDII14 [2012.1] Árvores B e B+
EDII14 [2012.1]   Árvores B e B+EDII14 [2012.1]   Árvores B e B+
EDII14 [2012.1] Árvores B e B+
 
Secretariado Executivo Aula 3 E 4
Secretariado Executivo  Aula  3 E 4Secretariado Executivo  Aula  3 E 4
Secretariado Executivo Aula 3 E 4
 
Aula 03 secretariado
Aula 03 secretariadoAula 03 secretariado
Aula 03 secretariado
 
Aula 07 secretariado
Aula 07 secretariadoAula 07 secretariado
Aula 07 secretariado
 

Kürzlich hochgeladen

ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
azulassessoria9
 
Slide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemáticaSlide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemática
sh5kpmr7w7
 
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
azulassessoria9
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
azulassessoria9
 
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
azulassessoria9
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
azulassessoria9
 
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
azulassessoria9
 
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdfatividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
Autonoma
 

Kürzlich hochgeladen (20)

ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
 
Slide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemáticaSlide - SAEB. língua portuguesa e matemática
Slide - SAEB. língua portuguesa e matemática
 
6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx
 
MESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdf
MESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdfMESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdf
MESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdf
 
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
 
Quiz | Dia da Europa 2024 (comemoração)
Quiz | Dia da Europa 2024  (comemoração)Quiz | Dia da Europa 2024  (comemoração)
Quiz | Dia da Europa 2024 (comemoração)
 
Sopa de letras | Dia da Europa 2024 (nível 2)
Sopa de letras | Dia da Europa 2024 (nível 2)Sopa de letras | Dia da Europa 2024 (nível 2)
Sopa de letras | Dia da Europa 2024 (nível 2)
 
M0 Atendimento – Definição, Importância .pptx
M0 Atendimento – Definição, Importância .pptxM0 Atendimento – Definição, Importância .pptx
M0 Atendimento – Definição, Importância .pptx
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
 
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.docGUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
 
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
Aula 25 - A america espanhola - colonização, exploraçãp e trabalho (mita e en...
 
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
 
Falando de Física Quântica apresentação introd
Falando de Física Quântica apresentação introdFalando de Física Quântica apresentação introd
Falando de Física Quântica apresentação introd
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
 
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 2 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
 
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptxMonoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
Monoteísmo, Politeísmo, Panteísmo 7 ANO2.pptx
 
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdfatividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
 
Questões de Língua Portuguesa - gincana da LP
Questões de Língua Portuguesa - gincana da LPQuestões de Língua Portuguesa - gincana da LP
Questões de Língua Portuguesa - gincana da LP
 
O que é arte. Definição de arte. História da arte.
O que é arte. Definição de arte. História da arte.O que é arte. Definição de arte. História da arte.
O que é arte. Definição de arte. História da arte.
 
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
 

EDII06 [2012.1] Arquivos Sequenciais Ordenados por Link

  • 1. Arquivos Sequenciais Ordenados por Link Estrutura de Dados II Unidade 06 UFS - DComp - Prof. Kenia Kodel 1
  • 2. Flores? O verbo educar é originário do latim e quer dizer extrair de dentro. Logo, a educação não se constitui em mero estabelecimento de informações, mas sim de se trabalhar as potencialidades do ser, a fim de que floresçam. UFS - DComp - Prof. Kenia Kodel 2
  • 3. O segredo é não correr atrás das borboletas... É cuidar do jardim para que elas venham até você. . Mário Quintana UFS - DComp - Prof. Kenia Kodel 3
  • 4. Arquivos Sequenciais Podem ser: 1. Desordenados 2. Ordenados, por chave(s) 2.1. Fisicamente 2.2. Por links (lógica)
  • 5. O que é um arquivo sequencial ordenado por link? UFS - DComp - Prof. Kenia Kodel 5
  • 6. Arquivo Sequencial Ordenado por Link  São arquivos sequenciais, ou seja, o acesso a um determinado registro implica na varredura de todos os itens que o antecedem.  São ordenados logicamente – a partir de campo que indica o endereço do próximo registro em ordem – campo link. UFS - DComp - Prof. Kenia Kodel
  • 7. Arquivo Sequencial PACIENTE Ordenado por Link  SANGUE RH DOAÇÃO CONTATO PESO LINK 0 2 1 Zé A + 12/12/03 (79)223.1542 80 -1 2 Beto B - 12/10/02 (79)8801.2017 70 4 Gil 3 O + 11/09/04 (79)9941.1388 72 5 4 Clô AB - 02/02/05 (81)2212.6711 95 3 5 Sara A - 10/01/04 (11)2213.0909 73 1 UFS - DComp - Prof. Kenia Kodel
  • 8. Em aplicações computacionais que manipulam arquivos sequenciais ordenados por link, que operações são úteis para manipulação da respectiva base de dados? UFS - DComp - Prof. Kenia Kodel 8
  • 9. Operações sobre Arquivos Sequenciais Ordenados 1. Inserção 2. Remoção 3. Consulta 4. Alteração 5. Classificação? 6. Recuperação ? UFS - DComp - Prof. Kenia Kodel 9
  • 10. Inclusão em Arquivos Sequenciais Ordenados por Link Na inserção em arquivos ordenados por links: (1) o novo registro é inserido fisicamente no final; (2) são identificados os registros antecessor e sucessor (lógicos) do novo registro (ponto de inserção); (3) o link do antecessor deve apontar para o endereço do novo registro e (4) o link do novo registro deve apontar para o sucessor. UFS - DComp - Prof. Kenia Kodel
  • 11. Arquivo Sequencial PACIENTE Ordenado por Link SANGUE RH DOAÇÃO CONTATO PESO LINK  0 2 1 Zé A + 12/12/03 (79)223.1542 80 -1 2 Beto B - 12/10/02 (79)8801.2017 70 4 3 Gil O + 11/09/04 (79)9941.1388 72 5 4 Clô AB - 02/02/05 (81)2212.6711 95 3 5 Sara A - 10/01/04 (11)2213.0909 73 1 Como efetuar a inserção de ANA, EVA e TEL no arquivo dado? UFS - DComp - Prof. Kenia Kodel
  • 12. Elaborar algoritmo para efetuar inclusão em arquivos sequenciais ordenados por links: Cuidando do jardim!!! UFS - DComp - Prof. Kenia Kodel
  • 13. Elaborar algoritmo para efetuar inclusão em arquivos sequenciais ordenados por links: type TpCliente = record Nome: string[5]; Link: longint; end; var Arq: file of TpCliente; Reg, RNovo, RAux: TpCliente; Anterior, PtIns: longint; begin {associacao a nome externo} assign(Arq,'Entrada.dat'); {abertura de arquivo} {$I-} reset(Arq); {$I+} if IOResult <> 0 then rewrite(Arq); ... UFS - DComp - Prof. Kenia Kodel
  • 14. Elaborar algoritmo para efetuar inclusão em arquivos sequenciais ordenados por links: {inicializacao} Anterior:=0; if filesize(Arq)<>0 then begin seek(Arq,0); read(Arq,Reg); PtIns:=Reg.Link end else begin PtIns:=-1; seek(Arq,0); Raux.Chave:=’-1’; RAux.Link:=-1; write(Arq,RAux); end; {inclusao do novo registro} writeln('Nome: '); readln(RNovo.Nome); UFS - DComp - Prof. Kenia Kodel
  • 15. Elaborar algoritmo para efetuar inclusão em arquivos seqüenciais ordenados por links: repeat if PtIns<>-1 then begin seek(Arq,PtIns); read(Arq,Reg); end; if (Reg.Nome>RNovo.Nome) or (PtIns=-1) then begin {atualizando anterior} seek(Arq,Anterior); read(Arq,RAux); RAux.Link:=filesize(Arq); seek(Arq,Anterior); write(Arq,RAux); {atualizando novo} RNovo.Link:=PtIns; seek(Arq,filesize(Arq)); write(Arq,RNovo); break; end else begin Anterior:=PtIns; seek(Arq,PtIns); read(Arq,Reg); PtIns:=Reg.Link; end; until false; UFS - DComp - Prof. Kenia Kodel
  • 16. Qual o custo da operação de inserção em arquivo sequenciais ordenados por links? Linear, no pior caso. UFS - DComp - Prof. Kenia Kodel 16
  • 17. Como efetuar remoção em arquivos sequenciais ordenados por link? UFS - DComp - Prof. Kenia Kodel 17
  • 18. Arquivo Sequencial PACIENTE Ordenado por Link SANGUE RH DOAÇÃO CONTATO PESO LINK  0 2 1 Zé A + 12/12/03 (79)223.1542 80 -1 2 Beto B - 12/10/02 (79)8801.2017 70 4 3 Gil O + 11/09/04 (79)9941.1388 72 5 4 Clô AB - 02/02/05 (81)2212.6711 95 3 5 Sara A - 10/01/04 (11)2213.0909 73 1 Como efetuar a exclusão de CLÔ no arquivo dado? UFS - DComp - Prof. Kenia Kodel
  • 19. Remoção em Arquivos Sequenciais Ordenados por Link Para efetuar a exclusão em arquivos sequenciais ordenados por links é recomendada a remoção lógica dos registros, por meio do ajuste dos ponteiros, tomando o devido cuidado para posterior reutilização dos espaços livres. UFS - DComp - Prof. Kenia Kodel
  • 20. Quais os efeitos da aplicação da exclusão física (com movimentação de dados, por exemplo) sobre arquivos ordenados por link? UFS - DComp - Prof. Kenia Kodel 20
  • 21. Elaborar algoritmo para efetuar exclusão em arquivos sequenciais ordenados por links: Cuidando do jardim!!! UFS - DComp - Prof. Kenia Kodel
  • 22. Elaborar algoritmo para efetuar exclusão em arquivos sequenciais ordenados por links: type TpCliente = record Chave: string[5]; Link: longint; end; var Arq: file of TpCliente; Reg, RExc, RAux: TpCliente; Anterior, PtExc : integer; Erro: integer; UFS - DComp - Prof. Kenia Kodel
  • 23. Elaborar algoritmo para efetuar exclusão em arquivos seqüenciais ordenados por links: begin {associacao a nome externo} assign(Arq,'Entrada.dat'); {abertura de arquivo} {$I-} reset(Arq); {$I+} if IOResult <> 0 then rewrite(Arq); {inicializacao} Anterior:=0; {if filesize(Arq)<>0 then} seek(Arq,0); read(Arq,Reg); PtExc:=Reg.Link; writeln('Chave a excluir: '); readln(RExc.Chave); UFS - DComp - Prof. Kenia Kodel
  • 24. Elaborar algoritmo para efetuar exclusão em arquivos sequenciais ordenados por links: repeat seek(Arq,PtExc); read(Arq,Reg); if (Reg.Chave=RExc.Chave) then begin {atualizando anterior} seek(Arq,Anterior); read(Arq,RAux); RAux.Link:=Reg.Link; seek(Arq,Anterior); write(Arq,RAux); {atualizando excluido e lista de excluidos} seek(Arq,0); read(Arq,Reg); val(Reg.Chave,RExc.Link,Erro); seek(Arq,PtExc); write(Arq,Reg); str(PtExc,Reg.Chave); seek(Arq,0); write(Arq,Reg); end else begin Anterior:=PtExc; seek(Arq,PtExc); read(Arq,Reg); PtExc:=Reg.Link; end; until PtExc=-1; {if PtExc=-1 then REGISTRO INEXISTENTE} close(Arq);end. UFS - DComp - Prof. Kenia Kodel
  • 25. Qual o custo da operação de remoção em arquivo sequenciais ordenados por links? Linear, no pior caso. UFS - DComp - Prof. Kenia Kodel 25
  • 26. Como efetuar busca em arquivos sequenciais ordenados por link? UFS - DComp - Prof. Kenia Kodel 26
  • 27. É conveniente aplicar busca binária em arquivo sequencial ordenado por link? UFS - DComp - Prof. Kenia Kodel 27
  • 28. Qual o custo da operação de busca em arquivo sequenciais ordenados por links? Se total, linear (com o agravante da necessidade de deslocamento do dispositivo de leitura). Se a partir de chave (específica): linear, no pior caso. UFS - DComp - Prof. Kenia Kodel 28
  • 29. Operações sobre Arquivos Sequenciais Ordenados Como efetuar a operação de alteração (edição) em arquivo sequencial ordenado por link? UFS - DComp - Prof. Kenia Kodel 29
  • 30. Operações sobre Arquivos Sequenciais Ordenados É preciso efetuar a operação de classificação em arquivo sequencial ordenado por link? Isto vale para todos os links? UFS - DComp - Prof. Kenia Kodel 30
  • 31. Operações sobre Arquivos Sequenciais Ordenados É preciso efetuar a operação de transferência entre memórias em arquivo sequencial ordenado por link? Que estrutura usar, neste caso, em memória principal? UFS - DComp - Prof. Kenia Kodel 31
  • 32. Quanto de espaço de armazenamento os arquivo sequenciais ordenados por links usam? Sendo n o tamanho dos dados, usam n acrescido do espaço necessário aos links. UFS - DComp - Prof. Kenia Kodel 32
  • 33. Visando garantir máxima eficiência na implementação de arquivos sequenciais, que forma de organização deve-se adotar? Desordenada, ordenada fisicamente ou ordenada por link? Justifique: Cuidando do jardim!!! UFS - DComp - Prof. Kenia Kodel 33
  • 34. Quando aplicar arquivos sequenciais ordenados por link? Analisar frequência das operações x custo destas na situação problema. UFS - DComp - Prof. Kenia Kodel 34
  • 35. Complementa r Estudos... File Organization and Processing Allan L Tharp Capítulo 2 Sequential File Organization 35 UFS - DComp - Prof. Kenia Kodel
  • 36. Próximo passo... Arquivos Diretos Dicionário UFS - DCOMP - Prof. Kenia Kodel 36