Estrutura de Dados - Repositório Educacional

Professor: Sakauê Metodológia: Apresentação de conceitos das estruturas de dados Bibliografia: Algoritmos em Linguagem C Algoritmos

Cronograma de dados

Data Dia da Semana Número de Aulas Atividade
Agosto 10 aulas
15/08 Quinta-feira 1 aula Estudar Listas Encadeadas
16/08 Sexta-feira 1 aula Estudar Listas Encadeadas
19/08 Segunda-feira 2 aulas Estudar Listas Encadeadas
22/08 Quinta-feira 1 aula Estudar Listas Encadeadas
23/08 Sexta-feira 1 aula Apresentar Listas Encadeadas
26/08 Segunda-feira 2 aulas Estudar Pilha Sem Cabeça
29/08 Quinta-feira 1 aula Estudar Pilha Sem Cabeça
30/08 Sexta-feira 1 aula Estudar Pilha Sem Cabeça
Setembro 14 aulas
02/09 Segunda-feira 2 aulas Estudar Pilha Sem Cabeça
05/09 Quinta-feira 1 aula Estudar Pilha Sem Cabeça
06/09 Sexta-feira 1 aula Apresentar Pilha Sem Cabeça
09/09 Segunda-feira 2 aulas Estudar Filas Sem Cabeça
12/09 Quinta-feira 1 aula Estudar Filas Sem Cabeça
13/09 Sexta-feira 1 aula Estudar Filas Sem Cabeça
16/09 Segunda-feira 2 aulas Estudar Filas Sem Cabeça
19/09 Quinta-feira 1 aula Apresentar Filas Sem Cabeça
20/09 Sexta-feira 1 aula Estudar Árvores Inserção
23/09 Segunda-feira 2 aulas Estudar Árvores Inserção
26/09 Quinta-feira 1 aula Estudar Árvores Inserção
27/09 Sexta-feira 1 aula Estudar Árvores Inserção
Outubro 18 aulas
01/10 Segunda-feira 2 aulas Estudar Árvores Inserção
03/10 Quinta-feira 1 aula Apresentar Árvores Inserção
04/10 Sexta-feira 1 aula Estudar Árvores Percorrimento
07/10 Segunda-feira 2 aulas Estudar Árvores Percorrimento
10/10 Quinta-feira 1 aula Estudar Árvores Percorrimento
11/10 Sexta-feira 1 aula Apresentar Árvores Percorrimento
14/10 Segunda-feira 2 aulas Estudar Árvores Remoção
17/10 Quinta-feira 1 aula Estudar Árvores Remoção
18/10 Sexta-feira 1 aula Apresentar Árvores Remoção
21/10 Segunda-feira 2 aulas Estudar Ordenação Select
24/10 Quinta-feira 1 aula Estudar Ordenação Select
25/10 Sexta-feira 1 aula Apresentar Ordenação Select
28/10 Segunda-feira 2 aulas Estudar Ordenação Insert
01/11 Sexta-feira 1 aula Estudar Ordenação Insert
04/11 Segunda-feira 2 aulas Estudar Ordenação Insert
07/11 Quinta-feira 1 aula Apresentar Ordenação Insert
08/11 Sexta-feira 1 aula Estudar Ordenação Merge
11/11 Segunda-feira 2 aulas Estudar Ordenação Merge
14/11 Quinta-feira 1 aula Estudar Ordenação Merge
18/11 Segunda-feira 2 aulas Apresentar Ordenação Quick
21/11 Quinta-feira 1 aula Estudar Ordenação Quick
22/11 Sexta-feira 1 aula Apresentar Ordenação Quick
25/11 Segunda-feira 2 aulas Estudar Ordenação Shell
28/11 Quinta-feira 1 aula Estudar Ordenação Shell
29/11 Sexta-feira 1 aula Apresentar Ordenação Shell

Aula 12 de agosto de 2024

Feito exercício dos primos, que consiste em verificar se um número é primo ou não aqui.

Capítulo 01

Falou muito sobre silogismos. Legal para entender bem básicamente o que é lógica e um pensamento encadeado coerente.

Capítulo 02

Os dados manipulados pelos algoritmos podem ser dos seguintes tipos: inteiro, real caracter ou lógico. Verificamos que para guardar os dados precisamos de identificadores, que servem de rótulo para dados variáveis ou constantes, e que para usá-los é necessária a declaração, na qal associamos o identificador a um tipo primitivo válido.

As expressões aritméticas, lógicas e relacionais, sendo que as duas últimas devem resultados em valor lógico (true or false). Assim como os operadores relacionais, aritméticos (mod, div, pot rad) e lógicos (e, ou, não). Concluímos o capítulo conhecimentos os comandos de entrada e saída de dados, bem como os conceitos de blocos.

Capítulo 03

Temos já resumos sobre algoritmos de seleção. Basicamente a manipulação de condicionais a blocos de código.

Um dos exercícios propostos é a transformações de certas estruturas redundantes de if e else em estrutura de seleção composta ou seleção encadeada, que nesse último caso, existe categorias como homogêneas e heterogênas.

Estruturas de repetição podem ser feito com enquanto determinada condição for verdadeira, ou com número específicos de repetições. Esses são critérios de parada de loop. Em uma operação com números indetermináveis de iterações, um bom critério de parada é o "se enquanto". É comum que a estrutura de repetição utilize uma variável acumulativa, que guarda resultados a cada iteração para resultado final.

Neste capítulo vimos que o fluxo de execução de algoritmo segue uma estrutura sequencial, significa ser executado passo a passo, sequencialmente. Vimos a estrutura de seleção, que permite que uma ação seja ou não executada, dependendo do valor resultante da inspeção de uma condição. A seleção pode ser simples, quando contém apenas a cláusula então, ou composta, quando contém então e senão. QUando é encadeada, pode ser homogêna ou heterogêna. Verificamos que seleções encadeadas homogênas são muito comuns, por isso especificamos a seleção de múltipla escolha, que apresenta casos que são avaliados. POr último, a estrutura de repetição, que permite que trechos de algoritmos sejam repetidos conforme certos critérios de parada. Verificando que podemos construir laços de repetição de três maneira.

  • Repetição com teste no início - enquanto
  • Repetição com teste final - repita
  • Repetição com variável de controle - para

Observamos que enquanto o laço pode não ser executado, pois a condição está no ínicio, que no repita o laço é executado pelo menos uma vez, pois a condição está no final, e que o para é necessário um número finito e determinado de iterações, pois é preciso conhecer o valor final da variável de controle do laço.

Estruturas de dados

Estruturas de dados existem, porque apenas os tipos primitivos não são capazes de expressar algumas formas complexas de manipulação de informação. Portanto, é preciso construir novos tipos. Os tipos construídos são uma composição de tipos primitivos, uma estrutura de dados.

Variáveis compostas homogênas.

As compostas homogênas são do mesmo tipo primitivo dentro de uma estrutura. Essas podem ser estrutura unidimensional, vetores. Esses são postos entre colchetes []

identificador = vetor [ LI - limite inicial do vetor, LF - limite final do vetor ] de tipo primitivo.

Para acesso de item, usa-se o nome do identificador, seu simbolo de representação [], e o índice (uma constante) que indica onde o item se encontra.

O Acessos a lista são O(1), pois a indicação do índice permite que o programa procura apenas naquela posição em específica