SamuelBFavarin / Grafos-GUI

Desenvolvimento de uma ferramenta com interface gráfica, para aplicação de algoritmos clássicos de grafos

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

grafos.js

Projeto desenvolvido durante o semestre da matéria de grafos, buscando implementar algoritmos de busca, coloração, geração de árvore mínima, além da representação visual, entre outras funcionalidades. Por fim uma apresentação sobre o "Problema da galeria de arte", onde mostramos a sulução desse problema com a utilização da coloração com DSATUR.

Descrição dos principais arquivos

  • js/grafosLib.js -> Algoritmos e implantação do grafo
  • js/grafosButton.js -> Comunicação entre index.html e grafosLib.js
  • js/canvas.js -> Implementção do desenho do grafo em canvas
  • index.html -> Interface gráfica para utilização do projeto

Autores:

CheckList de Atividades Desenvolvida

Entrega dia 15/09/2017 ✔️

  • criarGrafo(isOrientado, isPonderado) - Criar um grafo vazio.
  • inserirVertice(nome) - Inserir um vértice no grafo.
  • removerVértice(nome) - Remover um vértice do grafo.
  • inserirAresta(origem, destino) - Inserir uma aresta no grafo.
  • inserirArco(origem, destino) - Inserir um arco no grafo.
  • removerAresta(origem, destino): Remover uma aresta do grafo.
  • removerAresta(origem, destino): Remover uma aresta do grafo.
  • retornarVertice(nome): Verificar se existe um vértice no grafo com o nome específicado e o retornar.
  • existeAresta(origem, destino): Verificar se existe uma determinada aresta no grafo.
  • retornarArestas(vertice): Retornar uma lista de vértices adjacentes a um determinado vértice.
  • ImprimirGrafo(): Imprime o grafo. Tanto a matriz de adjacência e a lista de adjacência (podem ser impressos no console).
  • existeAresta(origem, destino): Verificar se existe uma determinada aresta no grafo.
  • existeAresta(origem, destino): Verificar se existe uma determinada aresta no grafo.
  • existeAresta(origem, destino): Verificar se existe uma determinada aresta no grafo.
  • bfs(verticeOrigem) - Busca em Largura sem destino
  • dfs(verticeOrigem) -Busca em profundidade sem destino
  • bfs(verticeOrigem, verticeDestino) -Busca em largura com destino
  • dfs(verticeOrigem, verticeDestino) -Busca em profundidade com destino

Entrega dia 06/10/2017 ✔️

  • dijkstra(verticeOrigem) -dijkstra sem destino
  • dijkstra(verticeOrigem, verticeDestino) -dijkstra com destino
  • Implementar interface de desenho de grafos
  • Coloração por Welsh e Powell
  • Coloração por DSATUR
  • Divisão de arquivo (Classe e funções)
  • Perfumaria da Interface Web

Entrega dia 03/11/2017 ✔️

  • Algoritmo Árvore geradora mínima com Kruskal
  • Algoritmo Árvore geradora mínima com Prim
  • Algoritmo Planaridade
  • Implementação dos algoritmos de geração de árvore mínima na interface

Entrega dia 24/11/2017 ✔️

  • Método de Ford-Fukerson
  • Identificar vértice fonte e sorvedouro
  • Usar busca de caminho com DFS
  • Usar grafo auxiliar, sem alterar o original

Entrega dia 08/12/2017 ✔️

  • Definição do problema

  • Apresentação

  • Desenvolvimento do Slide

    Slide da apresentação

About

Desenvolvimento de uma ferramenta com interface gráfica, para aplicação de algoritmos clássicos de grafos


Languages

Language:JavaScript 82.2%Language:HTML 15.0%Language:CSS 2.8%