No que se refere à organização de arquivos e métodos de aces...
Para adicionar registros em um arquivo sequencial ordenado por chave, deve-se fazer uma cópia do arquivo até o ponto de inserção, inserir o novo registro e copiar o restante do arquivo.
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Resposta Correta: C - certo
Vamos entender o processo abordado pela questão. Em um arquivo sequencial ordenado, os registros são armazenados em uma sequência baseada em algum campo chave que determina a ordem. Isso facilita muitas operações, como a busca, já que se sabe que os registros estão em uma ordem específica e algoritmos de busca rápida, como busca binária, podem ser aplicados.
Quando se deseja inserir um novo registro em tal arquivo, é preciso manter essa ordem. Isso significa que você não pode simplesmente adicionar o novo registro no final do arquivo; ele precisa ser inserido na posição correta de acordo com a chave. Para fazer isso, geralmente é necessário ler o arquivo até o ponto onde o novo registro deve ser inserido, o que envolve copiar esses dados, já que a inserção do novo registro pode deslocar todos os registros subsequentes. Após a inserção, os registros restantes são copiados para continuar a sequência.
Essa abordagem é inerentemente ineficiente, pois envolve a reescrita de grande parte do arquivo a cada inserção, mas é a consequência de usar um arquivo sequencial ordenado. Sistemas mais modernos podem usar estruturas de dados mais complexas, como árvores B ou tabelas de hash, que podem lidar com inserções de uma maneira mais eficiente, mas para o caso de arquivos sequenciais ordenados, a questão está correta em afirmar o procedimento de inserção.
Portanto, a alternativa C está correta, pois reflete adequadamente o processo de inserção em um arquivo sequencial ordenado.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Resposta: C
Alguém pode explicar? :)
Geralmente na computação quando estamos tratando de manipulação de dados é quase sempre criada uma copia, ou enviada uma, assim, se não for enviada ou inserida corretamente, o dado poderá se reenviado novamente.
A questão foi retirada daqui:
http://andersonataides.tripod.com/tean/apostila_arquivos.pdf (espeficamente na pág. 3)
Para adicionar registros em um arquivo seqüencial sem chave, basta incluir o registro no final do arquivo. Quando o arquivo é ordenado por uma chave, temos um problema: como manter a ordem do arquivo? A única forma de inserir um registro e manter a ordenação é fazer uma cópia do arquivo até o ponto de inserção, inserir o novo registro e copiar o restante do arquivo. Devido ao grande overhead gerado por esta inserção, geralmente os registros a serem inseridos são agrupados em lotes (ordenado) e depois é feito um processamento no arquivo original para inserir todos os registros de uma só vez. Outra alternativa é inserir os registros ao final do arquivo e depois classificá-los na seqüencia adequada
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo