Aula 1: Introdução
-
A sequência
MAC 110 122 323 338 :
abstração crescente.
-
MAC 323: (Algoritmos e) Estruturas de Dados.
-
De que trata MAC 323?
-
O tema de MAC 323 é o mesma de boa parte da
Ciência/Engenharia da Computação:
Como construir
programas que resolvem problemas
de maneira eficiente
(ou seja, sem desperdiçar tempo).
-
MAC0122 estudou pequenos problemas algorítmicos;
MAC0323 dá um passo à frente e estuda ferramentas
para resolver problemas algorítmicos.
-
Estruturas de Dados servem para organizar os seus dados
de modo que programas possam processá-los mais eficientemente.
-
Uma boa estrutura de dados tem um efeito dramático
sobre a velocidade dos programas.
-
Velocidade e eficiência têm a ver com
escalabilidade:
o consumo de tempo cresce de maneira razoável com o tamanho da tarefa?
ou o consumo de tempo explode com o aumento do tamanho da tarefa?
Nosso material
-
Meu website de MAC 323-2014.
-
Livro Algorithms de Sedgewick e Wayne.
-
Website do livro,
com resumos e slides.
-
O livro usa a linguagem Java.
-
Vamos programar em Java
(mas todos os conceitos
valem para qualquer linguagem de programação).
-
Aprenda as coisas por conta própria!
-
Se você acha que o prof falou uma bobagem,
é quase certo que você tem razão!
Como vamos trabalhar
-
Esta disciplina dá trabalho,
mas é divertida!
-
MAC 323 dá 2 créditos-trabalho
(além dos 4 créditos-aula).
-
Três provas, sem substitutiva, com pesos iguais.
-
Várias tarefas de programação.
Varios exercícios em sala, para nota.
-
Exrs: modificação de programas do livro.
-
Qual o seu sistema operacional?
Prefira GNU/Linux ou Unix.
-
Qual o seu editor de texto?
Prefira Emacs.
Para a próxima aula
Para a próxima aula
-
Antes da próxima aula,
instale o ambiente de programação do
website do Algorithms (4th ed.)
de Sedgewick e Wayne
(Veja a linha "To get started.
Here are instructions for setting up a simple Java programming environment
[Mac OS X - Windows - Linux]".)
Peça ajuda aos colegas se necessário!
-
Ajuste a variável de ambiente (environment variable)
classpath
do seu sistema.
Veja como fazer isso no meio da página
http://algs4.cs.princeton.edu/code/.
-
Se você tem um computador, traga-o para a próxima aula.