IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

Chemin entre noeuds d'un graphe


Sujet :

MATLAB

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2017
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2017
    Messages : 15
    Par défaut Chemin entre noeuds d'un graphe
    Bonjour,

    j'ai le code suivant qui me permet de créer un graphe

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    i=input('How many Subjects we have in the system:');
    j=input('How many Objects we have in the system:');
    B=randi([0 1], i*2,j); 
    disp('The Matrix of the system is the following');
    display(B);                                 % Get the system matrix 
    %B=A{i,j};
    nNodeCol = size(B,2);                            % one node for each column of B
    nNodeLine = size(B,1)/2;                         % one node for every two lines of B
    % First the column nodes, then the line nodes:
    nodeNames = [cellstr(strcat('O', num2str((1:size(B,2))'))) ; cellstr(strcat('S', num2str((1:size(B,1)/2)')))];
    % Adjacency matrix adj, adj(i,j)=1 means there is an edge from node#i to node#j:
    adj = zeros(nNodeCol+nNodeLine);                 % square matrix which size is the number of nodes
    adj(1:nNodeCol, nNodeCol+1:end) = B(1:2:end,:)'; % edge from a column node to a line node is added for all the 1 in the first line of the node in the matrix
    adj(nNodeCol+1:end, 1:nNodeCol) = B(2:2:end,:);  % edge from the line node to a column node is added for all the 1 in the second line of the node in the matrix
    % Creation of the graph:
    G = digraph(adj,nodeNames);
    plot(G);



    maintenant je veux introduire deux noeud du graphe , chercher s'il existe un chemin entre les deux , montrer le chemin sur le plot ( couleur différente ou autre chose, ...)
    j'ai essayer avec la fonction mais j'ai pas de résultat , peut être je l'ai mal utilisée.

    des suggestions ? Merci.
    Images attachées Images attachées  

Discussions similaires

  1. Réponses: 1
    Dernier message: 20/02/2017, 23h19
  2. Trouver tous les chemins entre deux noeuds dans un graphe qui contient des boucles
    Par GayaStudent dans le forum Algorithmes et structures de données
    Réponses: 5
    Dernier message: 21/11/2014, 21h31
  3. Longueur chemin entre 2 noeuds d'un arbre naire
    Par alex2746 dans le forum Général Java
    Réponses: 16
    Dernier message: 26/08/2011, 10h25
  4. recherche du plus cours chemins entre 2 sommets d'1 graphes
    Par must19 dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 05/04/2006, 11h57
  5. Calcul du plu court chemin entre 2 sommets d'un graphe valué
    Par atlasm dans le forum Algorithmes et structures de données
    Réponses: 25
    Dernier message: 07/08/2005, 17h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo