A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Algoritmos de ordenação e estruturas de dados Baseado em progrProlog4.

Apresentações semelhantes


Apresentação em tema: "Algoritmos de ordenação e estruturas de dados Baseado em progrProlog4."— Transcrição da apresentação:

1 Algoritmos de ordenação e estruturas de dados Baseado em progrProlog4

2 Algoritmos de ordenação de listas A operação de ordenação sobre listas supõe uma relação de ordem entre os objectos das listas. Sort(List, Sorted) denota uma relação onde List é uma lista de objectos e Sorted é uma lista com os objectos de List ordenados segundo uma relação de ordem.

3 ALGORITMO BUBBLESORT Especificação Para ordenar, por ordem crescente, uma lista, List Seleccionar dois objectos adjacentes, X e Y, em List tal que gt(X,Y); então permutar X e Y em List, obtendo a lista List1, e ordenar List1. Se não existir na lista List objectos adjacentes, X e Y, tal que gt(X,Y), então List está ordenada. The purpose of swapping two elements, X and Y, that occur out of order, is that after the swapping the new list is closer to a sorted list. After a sufficient amount of swapping we should end up with all elements in order. Implementação bubblesort(List,Sorted) :-swap(List,List1),!,bubblesort(List1,Sorted). bubblesort(Sorted,Sorted). swap([X,Y|Rest],[Y,X|Rest]) :-gt(X,Y).swap([Z|Rest],[Z|Rest1]) :- swap(Rest,Rest1).gt(X,Y) :- X > Y.

4 árvores binárias uma representação para as árvores binárias relação de pertença Especificação Implementação ordenação em árvores binárias relação de pertença Especificação Implementação (procedimento inorder) operação de inserção Especificação Implementação (procedimento addleaf) operação de remoção Especificação Implementação (procedimento del) visualizar uma árvore binária Especificação Implementação (procedimento show)

5 grafos caminho (acíclico) Especificação Implementação árvore Spanning num grafo (?)


Carregar ppt "Algoritmos de ordenação e estruturas de dados Baseado em progrProlog4."

Apresentações semelhantes


Anúncios Google