Vieruslista

Vieruslista on yleensä käytännössä paras tapa tallentaa verkon rakenne muistiin. Siinä jokaista solmua kohden tallennetaan lista niistä solmuista, joihin kyseisestä solmusta pääsee yhtä kaarta pitkin, joka mahdollistaa näiden solmujen nopean läpikäynnin. Tätä läpikäyntiä tarvitaan muunmuassa syvyys- tai leveyshakua toteutettaessa.

Yksinkertaisinta vieruslista on toteuttaa tilanteessa, jossa meillä on joku tietty määrä n solmuja, ja nämä solmut on numeroitu 1..n. Tällöin voidaan varata seuraavanlainen taulukko

ArrayList[] vl = new ArrayList[n+1];
Taulukossa olevat array listit ovat kuitenkin vielä alustamattomia, joten ne pitää vielä alustaa. Kaari solmusta i solmuun j lisätään seuraavasti:
vl[i].add(j);
ja kaikki solmut, joihin solmusta i on suora yhteys, voidaan käydä läpi näin:
for(int seuraava:vl[i]){
    // TEE JOTAIN        
}