Informática, perguntado por fernandomassayuki82, 5 meses atrás

Listas, de modo geral, podem conter pequenas ou grandes relações de elementos. As relações pequenas, independentemente da técnica utilizada, são manipuladas com baixo custo computacional por ter poucos itens. No entanto, relações grandes requerem a avaliação de técnicas apropriadas, como listas dinâmicas, com o objetivo de atender as demandas usando adequadamente os recursos computacionais disponíveis, por meio de rotinas otimizadas que proporcionam melhor desempenho.

Considere um processo computacional que requer a manipulação de uma lista encadeada simples com um milhão de registros. Esta lista está ordenada e deve permitir a inclusão de novos itens em qualquer posição, mantendo a ordem classificada.

Nesse contexto, sua tarefa é escrever o algoritmo que faça a inclusão dos novos elementos na lista encadeada simples na ordem certa, isto é, mantendo a lista classificada. Para isso, considere a seguinte estrutura da lista:



estrutura Produto (

codigoBarras : texto

descricao : texto

categoria : número inteiro

preco : número real)



estrutura ListaProduto (

produto : Produto

estrutura [ponteiro] proximoElemento : ListaProduto)

Soluções para a tarefa

Respondido por jtome213
17

Resposta:

novoProduto = alocarMemoria(listaProduto)

listaProduto.produto.codigoBarras= 1234567891011

listaProduto.produto.descricao= “Leite condensado”

listaProduto.produto.categoria= 5

listaProduto.produto.preço= 4,80

anterior= listaProduto

enquanto listaProduto.proximo diferente nulo

    se novoProduto for maior que listaProduto.proximo

         anterior.proximo= novoProduto

         novoProduto.proximo= listaProduto.proximo

   fim se

   anterior= listaProduto.proximo

fim enquanto

Explicação:


leonardoassissilva28: queria explicação
isahvenceslaugomes: explica moço
Perguntas interessantes