Repositório criado para armazenar códigos e atividades de diferentes Componentes Curriculares cursados na minha graduação na Universidade Federal da Fronteira Sul (UFFS).
O repositório contempla os CCR's:
Estrutura_de_Dados/- Estuda as formas de organizar e armazenar dados para que possam ser manipulados de maneira eficiente. Na disciplina, são abordadas diferentes estruturas, como listas, pilhas, filas, árvores, grafos e tabelas hash, além de algoritmos associados para inserção, remoção e busca
Grafos/- Estuda estruturas formadas por vértices e arestas, usadas para modelar relações e conexões, como em redes sociais ou mapas de rotas. Os principais tópicos incluem tipos de grafos (direcionados, ponderados), algoritmos de busca (BFS, DFS), e problemas de otimização (caminho mínimo, árvore geradora mínima). Grafos têm ampla aplicação em áreas como ciência de dados, redes e logística.
POD/(Pesquisa e Ordenação de Dados)- Aborda técnicas e algoritmos para organizar e buscar informações de maneira eficiente em conjuntos de dados. Os principais tópicos incluem algoritmos de ordenação (como quicksort, mergesort e heapsort) e técnicas de busca (sequencial, binária). Também são estudados conceitos de complexidade de tempo e espaço, permitindo avaliar a eficiência dos algoritmos.
Prog1/(Programação 1)- Estuda a modelagem software usando conceitos como classes, objetos, herança, polimorfismo e encapsulamento. O foco está na organização e reutilização de código, permitindo a criação de sistemas mais modularizados e fáceis de manter.
Prog2/(Programação 2)- Estuda o desenvolvimento de aplicações web modernas e escaláveis. Usando React no front-end, os alunos aprendem a criar interfaces dinâmicas e interativas. No back-end, com Node.js, são abordadas a construção de APIs RESTful e a lógica de servidor. Além disso, a disciplina cobre o uso do banco de dados PostgreSQL para armazenamento e gerenciamento de dados, incluindo operações CRUD e consultas SQL.
Sistemas/(Sitemas Digitais)- Estuda os fundamentos da lógica digital e o projeto de circuitos digitais. Os principais tópicos incluem representação binária, portas lógicas, circuitos combinacionais (como somadores e multiplexadores) e circuitos sequenciais (como flip-flops e registradores). Desenvolvem-se sistemas digitais usando linguagens de descrição de hardware, como VHDL ou Verilog.
Calculo_Numerico/(Cálculo Numérico)- Contempla a implementação de métodos numéricos para solução de diferentes problemas matemáticos como interpolação de funções e identificação de zeros de funções.
Inteligencia_Artificial/(Inteligência Artificial)- Contempla diverasas atividades relacionadas aos diferentes métodos de aprendizagem de máquina (supervisiono, não supervisionado, por reforço).
LP/(Linguagens de Programação)- Contempla a evolução das principais linguagens de programação, paradigmas da programação, sintaxe e semântica, verificação de tipos e escopos, Patern Matching, estruturas de controle no nível da instrução, tipos abstratos de dados, tratamento de Exceções. Linguagens declarativas: lógicas, funcionais, com restrições. Forte uso de linguagem funcional (HASKELL) para implementação de de uma linguagem de programação.
org/(Organização de Computadores)- Estuda tendências tecnológicas de CPUs, memórias e barramentos, hierarquia de memória e associatividade (cache e TLB), dispositivos de entrada e saída: tipos, características e sua conexão à CPU e à memória, CPU: instruções e modos de endereçamento. Formatos de instruções e linguagem de montagem. Simulador e montador. Uso de Assembly (RISC-V) para implementação de programas em baixo nível e de um jogo para o trabalho final.
Cada pasta contém os códigos e atividades relacionados ao respectivo componente curricular.