sábado, 26 de abril de 2008

Dança do algoritmoo!!!!

Momento besteirol!!!






(Exercício do algoritmo); muito besta esse video!!

Video aula.

Achei essa video aula no youtube, tem conteúdo bem legal.


Conceito básico (algoritmo).

Podemos ter dois caminhos para o conceito de algoritmo. Se você for ao dicionário da língua portuguesa você encontrará o seguinte: processo de cálculo em que um certo número de regras formais resolvem, na generalidade e sem exceções, problemas da mesma natureza.

Temos também o conceito dado pela lógica elementar, que é: um conjunto de instruções que devem ser executadas em determinada ordem para atingir seu objetivo. E para que essa ordem possa ser definida, é preciso entender a seqüência lógica pensada para a execução das instruções. No nosso dia a dia temos alguns exemplos dessas seqüência lógica quando queremos executar uma tarefa. Para entrar em casa, por exemplo, precisamos encontrar a chave, colocá-la na fechadura e abrir a porta. Já dentro de casa, devemos fechar a porta atrás de nós e trancá-la novamente. Não conseguiríamos entrar sem antes usamos a chave.

Existem alguns exemplos que servem para ilustração, dentre eles - como colocar um elefante uma geladeira? Essa é fácil, abre-se a geladeira e coloca-se o elefante dentro. E como se coloca uma girafa numa geladeira? Mais fácil ainda, tira-se o elefante e coloca-se a girafa dentro!

O mesmo pensamento lógico nós devemos aplicar na construção de algoritmos que serão executados por computadores. A seqüência das instruções precisa ter um ordenamento cuja lógica é a adequada para realização da tarefa. Mas esse ordenamento pode se tornar mais difícil, à medida que o algoritmo cresce de tamanho (mais instruções) ou em complexidade (prevendo mais situações diferentes).

Artigo ED - 01: Introdução às Estruturas de Dados

Por Brunno Augusto
As facilidades conseguidas nos dias atuais são devidas sobremaneira ao avanço tecnológico impulsionado principalmente pelos computadores. Estes são máquinas que permitem a execução de instruções com o fim de atingir um resultado e o armazenamento de dados para que uma vez processados resultem em uma informação. O modo como os dados estão armazenados está diretamente ligado à performance do sistema que se utiliza deles, ou seja, com a velocidade com a qual esses dados serão trabalhados pelo referido sistema e uma informação a partir deles é gerada.
Embora a velocidade com a qual os dados são manipulados no interior do computador seja da ordem dos segundos ou décimos de segundos quando em memórias secundárias e da ordem dos milésimos quando não nano segundos quando em memórias primárias e isso nos pareça extremamente rápido, o problema começa a existir quando cresce o número de dados e não existe nenhuma disciplina de organização sobre estes. Algo simples seria trabalhar com algumas centenas de dados, nesse ponto não haveria perda apreciável de performance por parte do sistema. Porém, quando começamos a trabalhar com milhões ou até bilhões de dados, a perda da performance tornar-se-ia apreciável e sistemas críticos que exigem tempos de resposta instantâneos, digamos assim, passariam a ser penalizados pelo volume de dados e pela ausência de uma disciplina de organização sobre estes. É nesse contexto que surgem as estruturas de dados.
Podemos dizer, de modo amplo, que uma estrutura de dados é uma estrutura abstracta que organiza os dados de modo que as operações realizadas sobre eles tornam-se mais eficientes.
Variadas são as Estruturas de Dados existentes, cada uma buscando atender a seu modo a manutenção da boa performance de um sistema. Eis algumas das principais estruturas de dados que acompanharemos nos demais artigos aqui publicados: Listas, estas subdividindo-se em lineares e não-lineares com as lineares ainda subdividindo-se em sequenciais e encadeadas; pilhas; filas e árvores, estas constituindo as listas não lineares como veremos mais adiante.
A partir do exposto aqui, podemos tirar duas conclusões importantes: Primeiro - O computador é uma ferramenta fundamental nos dias de hoje por facilitar o trabalho do homem; Segundo - Devido à inúmera quantidade de dados com os quais trabalha na facilitação do trabalho humano, o computador, a depender da finalidade a qual se destinam as informações que ele irá gerar, pode tornar-se demorado e dispendioso, o que leva à aplicação das estruturas de dados.
Cada estrutura será melhor tratada nos próximos artigos, então até lá.