Questões de Concurso
Comentadas sobre algoritmos em algoritmos e estrutura de dados
Foram encontradas 1.164 questões
1. O algoritmo consiste em percorrer o vetor de itens desordenados da esquerda para a direita, ordenando um item por vez. A cada passo, o item não ordenado é comparado aos itens à sua esquerda (os quais já estão ordenados) de modo a encontrar em qual posição ele deve ser colocado. Esses passos são repetidos para cada um dos itens não ordenados restantes. O algoritmo termina quando o último item do vetor é colocado na posição correta.
2. O algoritmo divide logicamente o vetor em duas partições: uma partição contendo itens ordenados, que é construída da esquerda para a direita na frente (esquerda) do vetor, e uma partição contendo itens restantes não ordenados que ocupam o resto do vetor. Inicialmente, a partição ordenada está vazia e a partição não ordenada é o próprio vetor de entrada. Em cada passo, o algoritmo encontra o menor item na partição não ordenada, trocando-o com o item não ordenado mais à esquerda da partição (colocando-o, portanto, em ordem). Então, o limite lógico entre as partições ordenada e não ordenada é incrementado em uma posição e os passos anteriores são repetidos. O algoritmo termina quando resta apenas um item a ser ordenado.
3. O algoritmo divide o problema em partes menores, resolvendo cada parte separadamente e juntando os resultados posteriormente. O vetor é dividido em duas partes iguais, sendo cada uma delas dividida em duas partes, e assim por diante, até restarem partes com um ou dois itens, cuja ordenação é trivial. Para juntar pares de partes ordenadas, os dois primeiros itens de cada parte são separados e o menor deles é selecionado e posicionado como primeiro elemento. Em seguida, os menores entre os restantes são comparados e posicionados e assim se prossegue até que todos os elementos tenham sido juntados. O procedimento é repetido até que todas as partes tenham sido tratadas.
I. Uma variável declarada no contexto de uma função é automaticamente acessível às demais funções do programa. II. A passagem de variável por valor a uma função permite que a função altere o valor da variável. III. Uma estrutura de seleção ou repetição, se fizer parte de outra estrutura de seleção ou repetição, deve estar completamente contida nesta.
Assinale a alternativa que contém a(s) afirmativa(s) CORRETA(S).
I. Em um algoritmo, toda condição tem que ser uma expressão lógica, algo que possamos pensar como “isto é verdadeiro ou isto é falso”.
II. Operadores lógicos podem ser de disjunção; conjunção; e, negação.
III. Para resolver um problema algoritmo precisamos de três estruturas básicas: estruturas sequenciais; estruturas de repetição; e, estruturas de decisão.
IV. São exemplos de tipos de dados: strings; caractere; inteiro; real; lógico; e, variável.
Está correto o que se afirma apenas em
Algoritmo "Alg1" Var num : real res : real soma : real Inicio soma <- 0 escreva("Digite um valor: ") leia(num) enquanto (num <> 0)faca res <- res + num escreva("Digite um valor: ") leia(num) fimenquanto escreva("Resultado> ", res) Fimalgoritmo
Nessa situação, será apresentado qual resultado da execução?
var x, y, z: inteiro início para x ← 1 até 10 passo 1 faça para y ← 1 até 10 passo 1 faça z ← x * y; exiba(z) fim_para exiba(y) fim_para fim
Ao ser executado em condições ideais, o penúltimo valor exibido da variável z e o valor exibido da variável y serão, respectivamente,
var renda: real início leia(renda) e (renda <= 1000) então exiba("Categoria 1") senão se (renda>1000 E renda<=2000) então exiba ("Categoria 2") senão exiba ("Categoria 3") fim_se fim_se fim
Uma alteração que pode ser feita para otimizar ou melhorar o algoritmo, sem alterar sua lógica, é
var a, b, c, d: inteiro var x, y, z: lógico início a ←2 b ← 1 c ← 3 d ← 0 x ← NÃO(a + d > 0) E (c - b <= 5) y ← NÃO(x) OU (c / a > 2) z ← y E x E (c - b - a >= 0) exiba (x, y, z) fim
Em condições ideais, a instrução exiba (x, y, z) deve mostrar os valores
Início [ Tipo MAT = matriz[1..3,1..3] de inteiros; MAT: M; Inteiro: i, j, X, Y; X ← 0; Y ← 0; Para i de 1 até 3 faça [ Para j de 1 até 3 faça [ Se i = j Então M[i,j] ← i + j + 1; Senão M[i,j] ← i + 2*j + 1; ] ] Para i de 1 até 3 faça [ X ← X + M[i,i]; Y ← Y + M[1,i]; ] Imprima (X+Y); ] Fim.
Ao final do algoritmo é impressa a soma (X+Y) que é igual a
( ) As iterações ocorrem dentro dos ciclos, quando são feitos refinamentos para agregar melhorias ao produto. No SCRUM, por exemplo, as interações acontecem por meio das Sprints. ( ) No processo incremental, o sistema completo é separado em 4 etapas: análise, implementação, verificação e manutenção. Ao final da quarta etapa, tem-se o produto para ser entregue. ( ) A cada iteração, o incremento deve ser funcional, para que seja possível realizar os testes e a validação pelas partes interessadas. ( ) O termo iterativo tem o significado de uma ação não repetitiva, isto é, o seu processo é desenvolvido linearmente seguindo o ciclo de vida do projeto.
A ordem correta de preenchimento dos parênteses, de cima para baixo, é:
I. Trata-se de um classificador que se baseia na probabilidade de cada evento ocorrer, desconsiderando a correlação entre features. Isso significa que se o valor de um atributo exerce algum efeito sobre a distribuição de classes existentes no conjunto, esse efeito é independente dos valores assumidos por outros atributos e de seus respectivos efeitos sobre a mesma distribuição de classe. II. Em um processo de classificação no qual um exemplar com rótulo desconhecido seja apresentado ao classificador, o algoritmo tomará a decisão sobre a qual classe o exemplar deve estar associado, por meio do cálculo de probabilidades condicionais, ou seja, as probabilidades de ele pertencer a cada uma das classes existentes no conjunto de dados de treinamento. III. Uma aplicação que pode se beneficiar do uso do algoritmo Naive Bayes é identificar se um determinado e-mail é um spam ou não.
Quais estão corretas?
I. A distância de cosseno é a métrica mais comumente utilizada, pois possui a propriedade de representar a distância física entre dois pontos em um espaço d-dimensional. A representação é realizada através de uma linha contínua entre os dois exemplares, que no espaço d-dimensional forma um triângulo e, então, a distância de cosseno é o cálculo da hipotenusa desse triângulo. II. A classificação de um exemplar, cuja classe é desconhecida, é realizada a partir da comparação desse exemplar com aqueles que possuem uma classe conhecida. O princípio do algoritmo é armazenar o conjunto de treinamento e realizar comparações entre o exemplar de teste e os exemplares armazenados a cada vez que um exemplar de teste é armazenado. III. O processamento do algoritmo é extremamente rápido, independentemente da quantidade de exemplares do conjunto de dados de treinamento. Trata-se de um estilo de processamento conhecido como naive evaluation (avaliação ingênua), já que não há um trabalho prévio de indução do modelo.
Quais estão corretas?
( ) O exemplar verdadeiro-positivo pertence à classe positiva, mas o classificador o classificou como pertencente à classe negativa. ( ) O f-score (medida F) é a percentagem de acertos ou verdadeiros positivos dentre todos os exemplos classificados como positivos. ( ) O exemplar verdadeiro-negativo pertence à classe negativa e o classificador o classificou como pertencente à classe negativa. ( ) A sensibilidade ou revocação (recall) é a taxa de verdadeiros positivos, isto é, porcentagem de verdadeiros positivos dentre todos os exemplares cuja classe esperada é a classe positiva.
A ordem correta de preenchimento dos parênteses, de cima para baixo, é: