En tilstødende matrix er en måde at repræsentere en graf som en matrix.
Tilstødende matrix af en graf med et endeligt antal hjørner (nummereret fra 1 til ) er en kvadratisk heltalsmatrix af størrelse , hvor elementværdien er lig med antallet af kanter fra det th toppunkt af grafen til det th toppunkt.
Nogle gange, især i tilfælde af en urettet graf, tæller en sløjfe (en kant fra det -. vertex til sig selv) som to kanter, det vil sige, at værdien af det diagonale element i dette tilfælde er lig med det dobbelte af antallet af sløjfer omkring det -te toppunkt.
Den tilstødende matrix af en simpel graf (der ikke indeholder sløjfer eller flere kanter) er en binær matrix og indeholder nuller på hoveddiagonalen .
Adjacency-matrixen af en todelt graf , hvis dele også har toppunkter , kan skrives på følgende form
hvor er en matrix, og og er nul - matricer. I dette tilfælde repræsenterer den mindre matrix entydigt grafen, og de resterende dele af matrixen kan kasseres. undertiden kaldet bis-adjacency-matrixen.
Formelt, lad være en todelt graf med dele og . En bikonjugeret matrix er en 0-1 matrix , hvor hvis og kun hvis .
Hvis er en todelt multigraf eller en vægtet graf, så vil elementerne være henholdsvis antallet af kanter mellem hjørner eller vægten af kanterne .
Kurve | Adjacency matrix |
---|---|
Adjacency-matrixen af en urettet graf er symmetrisk , hvilket betyder, at den har reelle egenværdier og en ortogonal basis af egenvektorer. Sættet af dets egenværdier kaldes grafens spektrum og er hovedemnet for undersøgelse i spektralgrafteori .
To grafer og med tilstødende matricer og er isomorfe , hvis og kun hvis der eksisterer en permutationsmatrix, således at
.Det følger af dette, at matricerne og er ens , og derfor har lige store sæt af egenværdier, determinanter og karakteristiske polynomier. Det modsatte er dog ikke altid sandt - to grafer med lignende tilstødende matricer er muligvis ikke isomorfe (dette sker, hvis matrixen ikke er permuterbar, f.eks. matricerne og ligner hinanden, men de tilsvarende grafer er ikke isomorfe).
Hvis er grafens tilstødende matrix , så har matrixen følgende egenskab: elementet i -th række, -th kolonne er lig med antallet af stier fra -th toppunkt til -th, bestående af nøjagtigt kanter.
Adjacency matrix og adjacency lister er de vigtigste datastrukturer , der bruges til at repræsentere grafer i computerprogrammer.
Brug af en tilstødende matrix er kun at foretrække i tilfælde af ikke-sparsomme grafer med et stort antal kanter, da det kræver lagring af en bit data for hvert element. Hvis grafen er sparsom, vil det meste af hukommelsen blive spildt på at gemme nuller, men i tilfælde af ikke-sparsomme grafer repræsenterer tilstødende matrix grafen i hukommelsen ret kompakt, idet den bruger omkring en smule hukommelse, hvilket kan være en rækkefølge af størrelsesorden bedre end tilgrænsende lister.
I algoritmer, der arbejder med vægtede grafer (f.eks. i Floyd-Warshall-algoritmen ), indeholder elementerne i tilstødende matrix, i stedet for tallene 0 og 1, der angiver tilstedeværelsen eller fraværet af en kant, ofte vægten af kanterne dem selv. Samtidig sættes en speciel grænseværdi ( engelsk sentinel ) i stedet for de manglende kanter , afhængigt af problemet, der løses, normalt 0 eller .