Ed
há 2 semanas
Vamos analisar cada afirmativa: I. "A propriedade associativa da multiplicação de matrizes garante que todas as ordens possíveis de multiplicação resultam no mesmo custo computacional." Falso. A multiplicação é associativa, ou seja, o resultado é o mesmo independentemente da associação, mas o custo computacional varia conforme a ordem da multiplicação. II. "A programação dinâmica é utilizada para determinar a ordem ótima de multiplicação de matrizes que minimiza o custo computacional." Verdadeiro. Esse é exatamente o objetivo do algoritmo de programação dinâmica para multiplicação de cadeias de matrizes. III. "O custo computacional de multiplicar três matrizes A,B,C com dimensões 10 × 100, 100 × 5 100 e 5 × 50 é minimizado pela associação (A×B)×C." Vamos calcular: - (A×B)×C: - A×B: 10×100 × 100×5100 → custo = 10×100×5100 = 5.100.000 - Resultado: 10×5100 - (A×B)×C: 10×5100 × 5100×50 → custo = 10×5100×50 = 2.550.000 - Total = 5.100.000 + 2.550.000 = 7.650.000 operações - A×(B×C): - B×C: 100×5100 × 5100×50 → custo = 100×5100×50 = 25.500.000 - Resultado: 100×50 - A×(B×C): 10×100 × 100×50 → custo = 10×100×50 = 50.000 - Total = 25.500.000 + 50.000 = 25.550.000 operações Portanto, (A×B)×C minimiza o custo computacional. Item III é verdadeiro. IV. "O algoritmo de programação dinâmica para multiplicação de matrizes utiliza uma tabela de custos para armazenar os resultados das subcadeias de multiplicação." Verdadeiro. Essa é a essência da programação dinâmica: armazenar resultados intermediários para evitar recomputação. Conclusão: os itens verdadeiros são II, III e IV. Alternativa correta: C) II, III e IV, apenas.
Cadastre-se ou realize login
Mais perguntas desse material