Olá, Comunidade!

Vocês devem ter notado que o site ficou um período fora do ar (do dia 26 até o dia 30 de maio de 2024).

Consegui recuperar tudo, e ainda fiz um UPGRADE no servidor! Agora estamos em um servidor dedicado no BRASIL!
Isso vai fazer com que o acesso fique mais rápido (espero 🙏)

Já arrumei os principais bugs que aparecem em uma atualização!
Mas, se você encontrar alguma coisa diferente, que não funciona direito, me envie uma MP avisando que eu arranjo um tempo pra arrumar!

Vamos crescer essa comunidade juntos 🥰

Grande abraço a todos,
Prof. Caju

ALGORITMOS E IMPLEMENTAÇÕESLinguagem PHP

Implementação de equações dentro da computação, programação e algoritmos.

Moderador: [ Moderadores TTB ]


Autor do Tópico
Deleted User 25727
6 - Doutor
Última visita: 31-12-69
Set 2021 26 20:53

Linguagem PHP

Mensagem não lida por Deleted User 25727 »

Uma estrutura em grafo é utilizada para modelar relações entre pares de elementos
de um determinado conjunto. Os elementos são chamados de vértices e as relações
entre pares, quando existirem, definem o conjunto de arestas. Tomemos um exemplo
prático: um conjunto de alunos do CEDERJ pode ser modelado como um conjunto de
vértices de um grafo enquanto as arestas podem representar relações entre pares de
alunos que pertençam a uma mesma turma. A figura abaixo ilustra o grafo resultante
do seguinte conjunto de alunos V = {Maria, João, José, Ana, Antônio,
Joana}, sabendo que Maria, João e Ana foram da mesma turma de PAW em 2021;
João, José e Joana da mesma turma de redes em 2020; e Antônio e Joana da
mesma turma de sistemas operacionais também em 2020.
Note que é possível representar o grafo através de uma matriz de adjacências M = V
V, onde M[j]=1 quando a aresta entre i e j existir. × Na figura abaixo,
M[j]=1 indica que eles pertenceram a uma mesma turma; enquanto
M[j]=0 indica que eles nunca pertenceram a uma mesma turma

Pergunta:
Deseja-se desenvolver em PHP uma função para desenvolver grafos cujas arestas
entre os vértices possuem uma probabilidade p de existir (grafo conhecido pelo nome
de Erdõs-Rényi, G(n,p)), onde n é o número de vértices. Esta função deve retornar a
matriz de adjacências correspondente. Note que a implementação das funções deve
respeitar as assinaturas abaixo, na qual o parâmetro $vetorVertices contém o vetor
de vértices (p.ex., o vetor V da figura acima) e o parâmetro $probabilidade é um
número real entre 0 e 1 usado para definir se cada uma das arestas entre os elementos
de V existem ou não.
Dica: A implementação da função deve considerar cada uma das possíveis arestas do
grafo através da combinação dois a dois de todos os vértices. A aresta existe se o valor
retornado por uma função aleatória for menor que o valor da probabilidade utilizada. A
função aleatória deve retornar valores pertencentes ao mesmo intervalo real de
probabilidades, ou seja, entre 0 e 1.
function cria_grafo($vetorVertices, $probabilidade)
Anexos
1.PNG
1.PNG (16.38 KiB) Exibido 1221 vezes

Responder
  • Tópicos Semelhantes
    Respostas
    Exibições
    Última mensagem

Voltar para “ALGORITMOS E IMPLEMENTAÇÕES”