Scilab function
Last update : 16/06/2004

adj_lists - calcule des listes d'adjacence

### Calling Sequence

  `[lp,la,ls] = adj_lists(g)`
  `[lp,la,ls] = adj_lists(oriented,n,tail,head)`

### Parameters

- `g` : graphe (liste)
- `oriented` : entier, 0 (graphe non-orienté) ou 1 (graphe orienté)
- `n` : entier, le nombre de sommets du graphe
- `tail` : le vecteur ligne des numéros des sommets origines du graphe (sa taille est égale au nombre d'arêtes du graphe)
- `head` : le vecteur ligne des numéros des sommets extrémités du graphe (sa taille est égale au nombre d'arêtes du graphe)
- `lp` : vecteur ligne, tableau de pointeurs de la description du graphe sous forme de liste d'adjacence (sa taille est égale au nombre de sommets du graphe + 1)
- `la` : vecteur ligne, tableau d'arcs de la description du graphe sous forme de liste d'adjacence (sa taille est égale au nombre d'arêtes du graphe)
- `ls` : vecteur ligne, tableau de sommets de la description du graphe sous forme de liste d'adjacence (sa taille est égale au nombre d'arêtes du graphe)

### Description

`adj_lists` calcule le vecteur ligne de la description du graphe `g` sous forme de liste d'adjacence. Il est aussi possible de donner `adj_lists`, la description du graphe donnée par le nombre de sommets `n` ainsi que les vecteurs lignes `tail` et `head`.

### Examples

    ta=[2 3 3 5 3 4 4 5 8];
    he=[1 2 4 2 6 6 7 7 4];
    g=make_graph('foo',1,8,ta,he);
    g('node_x')=[129 200 283 281 128 366 122 333];
    g('node_y')=[61 125 129 189 173 135 236 249];
    show_graph(g);
    [lp,la,ls]=adj_lists(g)
    [lp,la,ls]=adj_lists(1,g('node_number'),ta,he)

### See Also

`chain_struct`, `graph_2_mat`,