Skip to content

Instantly share code, notes, and snippets.

View import-benjamin's full-sized avatar

Benjamin import-benjamin

View GitHub Profile
// desc : on récupère les prédecesseurs d'un sommet
// input : sommet (X), matrice d'adjacence (M)
function LP = predecesseurs(M,X)
LP = find(M(:,X) == 1)
endfunction
@import-benjamin
import-benjamin / adjacency.sce
Created November 25, 2017 14:32
graph theory : check if two node are connected
// desc : vérife si un ou des sommets sont adjacents.
// input : Liste d'adjacence ([S, T]), sommet (x), voisin (y)
// output : boolean (bool)
function bool = present(S, T, x, y)
tblMatch = length(find(liste_succ(S, T, x)==y))
if( tblMatch > 0) then bool = 1; else bool = 0; end
endfunction
@import-benjamin
import-benjamin / matrix2list.sce
Created November 25, 2017 14:28
graph theory : convert adjacency matrix to adjacency list in scilab
// desc : retourne une matrice sous forme de liste d'adjacence
// input : matrice d'adjacence (M)
// ouput : Liste d'adjacence ([S, T])
function [S, T] = mat2listes(M)
tailleMatrice = size(M,1)
S = [] // liste des successeurs.
T = [1] // initialise forcément à 1.
for k=1:tailleMatrice
S = [S, find(M(k,:) == 1)] // on récupère les numéros lignes qui sont à 1
T = [T, length(S)+1] // on indique le début du prochain sommet
@import-benjamin
import-benjamin / list2matrix.sce
Created November 25, 2017 14:26
graph theory : convert adjency list to matrix in scilab
// desc : retourne une liste d'adjacence sous forme de matrice
// input : liste d'adjacence (S, T)
// output : matrice (MS)
function MS=listes2mat (S, T)
nbSommets = length(T)-1 // le nombre de sommets
MS = zeros(nbSommets, nbSommets) // on initialise une matrice d'adjacence vide
for k=1:nbSommets
MS(k, liste_succ(S,T,k)) = 1
end
endfunction
@import-benjamin
import-benjamin / successors.sce
Created November 25, 2017 14:24
graph theory : successor list
// On peut aussi représenter un graphe simple en donnant pour chacun de ses sommets la liste des sommets auxquels il est adjacent. Ce sont les listes d’adjacences.
// input : liste d'adjacence (S, T), sommet (x)
// output : liste des successeurs (LS)
function LS = liste_succ (S, T, x)
// T(X) désigne la case dans S du début des successeurs de x.
// T(X+1) désigne la case dans S du début des successeurs du prochain sommet. (T(x+1)-1)) désigne donc la dernière case avant le prochain sommet.
LS = [S(T(x):(T(x+1)-1))]
endfunction
@import-benjamin
import-benjamin / .gitignore
Created April 30, 2017 17:15
gitignore for LaTeX
# Created by https://www.gitignore.io/api/latex
### LaTeX ###
## Core latex/pdflatex auxiliary files:
*.aux
*.lof
*.log
*.lot
*.fls