O estudo da complexidade de algoritmos é essencial para
garantir que uma mesma tarefa possa ser realizada de modo
mais eficiente do que utilizando soluções que demandem
maior custo de processamento. A complexidade de tempo
do algoritmo Merge Sort, quando ordenando uma lista de
tamanho n, é:
Estruturas de Dados são formas de organizar dados. Neste
sentido, a forma como dados são inseridos e removidos
varia e caracteriza cada tipo diferente de estrutura de dados.
Observe a seguinte coleção de dados em que o início é à
esquerda.
4 8 1 3
8 1 3
1 3
5 1 3
Elaborado pelo(a) autor(a).
Considerando a representação de como a estrutura se
comporta durante as operações sucessivas de adição e
remoção de elementos, infere-se que a estrutura de dados
é uma:
Suponha que um quadro (frame) Ethernet com endereço de
destino 48:5A:65:16:BC:32 seja recebido por um comutador
(switch) Ethernet em sua interface de número 8. O
comutador faz uma busca pelo endereço de destino do
quadro em sua tabela de comutação e encontra uma
entrada na tabela que associa esse endereço à sua interface
de número 8. Isso significa que
Processos e threads são estruturas do sistema operacional
que permitem compartilhar a capacidade de processamento
entre múltiplas tarefas paralelas ou pseudo-paralelas. A
principal diferença entre eles consiste no fato de que
Em bancos de dados, a forma normal define as condições
que as tabelas devem satisfazer para evitar problemas de
redundância, anomalias de atualização e inconsistências
nos dados. A tabela em que todos os atributos não-chave
devem ser totalmente dependentes da chave primária e que
não pode conter dependências transitivas, mas em que a
tabela ainda pode conter múltiplas dependências
independentes entre os atributos não-chave encontra-se na:
Durante o projeto de banco de dados, a modelagem dos
atributos de uma entidade é crucial para garantir que o
banco representa fidedignamente as entidades do mundo
real. Neste sentido, para uma entidade Pessoa Física, o
atributo que pode ser corretamente modelado como um
atributo composto e multivalorado é o
Na programação para Internet das Coisas (IoT – Internet of
Things), o paradigma de interação publish-subscribe
(também conhecido como “publicador-assinante”) é útil para
Expressões regulares são importantes para criar filtros e
representar conjuntos de cadeias de caracteres que
atendem a um determinado padrão. A expressão regular
a|b* denota o mesmo que:
A mineração de dados é um campo da ciência da
computação que envolve a descoberta de padrões,
tendências e informações úteis em grandes conjuntos de
dados. Na mineração de dados, a técnica que prevê uma ou
mais variáveis numéricas contínuas, como lucro ou perda,
com base nos outros atributos do conjunto de dados é a:
Business Intelligence (BI) é um conjunto de processos,
metodologias, tecnologias e ferramentas utilizadas para
coletar, integrar, analisar e apresentar informações
relevantes sobre uma organização ou negócio. O objetivo
principal do BI é ajudar as empresas a tomar decisões mais
informadas e estratégicas, fornecendo insights baseados
em dados precisos e oportunos.
Processos conhecidos como ETL são comumente utilizados
no contexto de arquiteturas de soluções de BI. A etapa do
ETL onde ocorre remoção de dados duplicados, correção de
erros, conversão de formatos de dados, agregação de
dados e enriquecimento de dados com informações
adicionais é:
O termo “middleware” refere-se a software de sistemas
distribuídos que executa entre as aplicações e o sistema
operacional. Dentre as funções do middleware, destaca-se
a provisão de transparência em relação aos aspectos de
distribuição para os usuários e desenvolvedores de
aplicações. Nesse contexto, a chamada “transparência de
acesso” refere-se
Em segurança de redes de computadores, como pode ser
definida a função desempenhada por um sistema de
detecção de intrusão posicionado no ponto de conexão da
rede de uma organização com a Internet?
Os métodos ágeis de desenvolvimento de software têm se
popularizado por aumentar a efetividade na entrega do
produto, potencialmente reduzindo custos e prazo. Neste
contexto, um dos conceitos fundamentais nos métodos
ágeis de desenvolvimento de software é: