Otimização de algoritmos

Este artigo foi desenvolvido juntamente com os colegas da faculdade: Bruno Alisson, Higor Vinicius, Jean Silvestre. Ele pretende mostrar a importância da otimização de algoritmos e a definição de algoritmo e de otimização.

[ Hits: 47.687 ]

Por: João Carlos abreu Junior em 17/07/2006


Algoritmos



"O dicionário da língua portuguesa editado pelo Ministério da Educação define algoritmo (termo matemático) como um processo formal de cálculo." (GOLDBARG e LUNA, 2006:599).

"Diversos autores denominam os problemas que não podem ser selecionados através de processos formais de cálculo como problemas não decidíveis. Nesse caso, os algoritmos são estratégias para solução de problemas decidíveis, ou seja, para problemas cuja a solução admita um processo formal de ações." (GOLDBARG e LUNA, 2006:600).

A figura 1 representa um algoritmo em linguagem natural:


Figura 1. Esquema de um algoritmo em linguagem natural
Fonte: (Dias, 2006:5)

Entendamos por algoritmo todo e qualquer procedimento capaz de solucionar um determinado problema, através de passos previamente elaborados por alguém que entenda bem deste. O algoritmo deve ser capaz de resolver todas as instâncias, entenda-se por instância os valores de entrada a serem processados, do problema a ele proposto, basta que uma instância falhe para o algoritmo ser classificado como ineficiente. O estabelecimento de uma ordem de instruções, por si só não significa que tenhamos um método eficiente. A finalidade maior de um algoritmo é a solução de um problema com uma maior precisão em todas as fases do processo. Por isso é de grande importância o emprego de uma otimização eficiente nos mesmos.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Algoritmos
   3. Otimização de Algoritmos
   4. Conclusão
Outros artigos deste autor

Instalação do Slackware 11.0 sem medo

Leitura recomendada

Dicas para aprender programação

Tutorial SDL

Linguagem C - Listas Duplamente Encadeadas

Linguagem C - Árvores Binárias

Guia de Programação em C/GTK 2 - Construindo uma Calculadora Completa

  
Comentários
[1] Comentário enviado por removido em 17/07/2006 - 16:18h

unrrun

[2] Comentário enviado por removido em 17/07/2006 - 20:03h

aaaaaaaaaffffffffffffffffffff!!!

[3] Comentário enviado por yusuke em 18/07/2006 - 09:08h

qual a nota que vcs tiraram por este "artigo" ?

[4] Comentário enviado por tobias_felipe em 18/07/2006 - 10:36h

Pô cara, 'cê mandou um trabalho de escola pro site? Não dava nem pra disfarçar um pouco?

[5] Comentário enviado por jcaj em 18/07/2006 - 10:39h

Caro tobias_felipe a intenção não era de disfarçar e sim passar o conhecimento que obtivemos fazendo o trabalho. Se você acha que trabalho escolar não é interessante ficar exposto aqui no site, de onde você acha que vem o avanço da tecnologia?

[6] Comentário enviado por Ragen em 18/07/2006 - 11:02h

jcaj,

O artigo é bastante didatico, mas muito superficial. Você poderia ter abordado questões mais práticas e aplicadas ao desenvolvimento real de softwares.

Por exemplo: abordado pre-processamento e pre-caching, praticas que se adaptam a quase qualquer tipo de problema.

[7] Comentário enviado por ulisses_castro em 18/07/2006 - 11:35h

O ministério da saúde adverte:

Fumar Maconha antes de mandar artigos causa edêma cerebral!

o.O


[8] Comentário enviado por fdettoni em 18/07/2006 - 15:47h

Cadê o conteudo do artigo?


[9] Comentário enviado por edsonjbueno em 19/07/2006 - 02:08h

Quem ja sabe é facil criticar e colocar defeitos em vez de contribuir, mas tem muita gente que esta aprendendo, e ajuda bastante o artigo...

[10] Comentário enviado por htampieri em 04/08/2006 - 20:16h

a importancai de artigo nao é esclarecer todas as duvidas do leitor mas sim acrescentar conteudo ao seu intelectuo. nao vejo diferença em puplicar um artigo cientifico de faculdade pois a maioria deles são mesmo de faculdade. o que importa é conteudo.

Higor.

[11] Comentário enviado por ubuntuvitor em 17/09/2007 - 19:40h

Gente vamos com calma porque, o connhecimento se adquire com pequenas coisas, sei que o trabalho dos colegas esta superficial so que lembre-se sempre temos novos cadastro no site de pessoas que estão começando a programar. Por isso se ao é do seu interesse o material apenas agradeça a pessoa porque ele ao menos teve a boa vontade de ajudar.
" ninguem sabe tudo mas todos juntos sabem tudo"
Vitor Cloves

[12] Comentário enviado por vagnerpolles em 07/07/2009 - 11:50h

Acredito que todos os artigos na area de logica sao bem vindos, o processo de adquirir conhecimento e algo ciclico, comeca com pequenos passos.

Nos instigamos por algum assunto;
Aprendemos algo;
Aplicamos este conhecimento;
Temos novas interesses;
Nos instigamos por algo novo... e repetimos o processo inúmeras vezes.

Caro Joao Carlos, nao se deixe influenciar pelo negativismo e aprenda com todos os comentários.

O Sabio tem certeza apenas de uma coisa: Que ele nao sabe tudo!


Contribuir com comentário