next up previous contents
Next: Justificativa Up: LABED: Um Laborátorio de Previous: Introdução

Objetivos

Pretendemos construir e disponibilizar para os alunos dos cursos de computação uma ferramenta que auxilie na compreensão das principais estruturas de dados e dos algorítmos a elas relacionados. Esta ferramenta deverá seguir as novas tendências da educação, onde o aluno é encorajado a exercitar livremente sua criatividade e a ``aprender fazendo''.

O programa terá dois modos de funcionamento. No primeiro modo o usuário irá poder manipular as estruturas de dados utilizando algoritmos previamente implementados. Ele poderá executar as principais operações permitidas pela estrutura, visualizando graficamente os ``movimentos'' de cada nó e cada ponteiro durante a execução da operação. Estas operações poderão ser executadas ``paralelamente'' em diversas estruturas diferentes. Desta forma, ele poderá comparar o comportamento das estruturas em diversas situações diferentes, e tirar suas próprias conclusões a respeito das vantagens e desvantagens de cada estrutura. Por exemplo, ao pedir que uma sequência grande de chaves ordenadas sejam inseridas em uma árvore de busca binária (ABB) e em uma árvore AVL, o aluno poderá ``assistir'' na tela do computador a construção das duas árvores. Com isto, ele deverá perceber que depois de algumas chaves as inserções na AVL passam a ser mais eficiênte. O importante é que ele poderá repetir este experimento quantas vezes for necessário, e com as mais variadas sequências de entrada. Para ajudar na análise comparativa dos algorítmos o LABED deverá fornecer vários dados relacionados com a complexidade do algorítmo, como por exemplo, o total de comparações efetuadas durante a execução de uma determinada operação.

Enquanto o primeiro modo ajuda o aluno a compreender as estruturas de dados e os seus algoritmos, o segundo modo deverá ajudar o aluno a criar os seus próprios algorítmos. Um interpretador, embutido no programa, permitirá ao aluno a criação e a execução ``passo-a-passo'' de seus próprios códigos. Uma imagem simplificada da memória do computador, junto com a representação gráfica da situação de cada ponteiro em cada passo da execução, darão ao aluno um visão mais concreta do que o seu código está fazendo.


next up previous contents
Next: Justificativa Up: LABED: Um Laborátorio de Previous: Introdução

1999-02-22