Динамические структуры данных. Алексеев А.Ю - 24 стр.

UptoLike

Рассмотренные примеры можно считать также и примерами "операцион-
ного" представления иерархических списков. Нетрудно заметить, что по-
строение каждой "точечной" пары (значения типа Pair ( S_expr( El ) ) ) в ско-
бочной записи списка требует, как и в случае линейного списка, однократного
применения конструктора Cons.
Еще одним традиционным способом представления иерархических спи-
сков является графическое их представление. На рис.1.21 приведены изобра-
жения иерархических списков, ориентированные на ссылочную реализацию в
динамической памяти. Каждое звено списка на рисунке соответствует вызову
конструктора Cons в "операционном" представлении или "точечной" паре в
скобочной записи списка.
a
Рис. 1.21. Графическое представление иерархических списков:
вверхуизображение списка (a (b c) d e);
внизуизображение списка (a (() (b c) d) e)
e
d
c
b
a e
d
b
c
24
   Рассмотренные примеры можно считать также и примерами "операцион-
ного" представления иерархических списков. Нетрудно заметить, что по-
строение каждой "точечной" пары (значения типа Pair ( S_expr( El ) ) ) в ско-
бочной записи списка требует, как и в случае линейного списка, однократного
применения конструктора Cons.
   Еще одним традиционным способом представления иерархических спи-
сков является графическое их представление. На рис.1.21 приведены изобра-
жения иерархических списков, ориентированные на ссылочную реализацию в
динамической памяти. Каждое звено списка на рисунке соответствует вызову
конструктора Cons в "операционном" представлении или "точечной" паре в
скобочной записи списка.




        a                                        d                e




                              b                  c




            a                                    e




                                                                  d




                                                 b                c



                Рис. 1.21. Графическое представление иерархических списков:
                           вверху – изображение списка (a (b c) d e);
                          внизу – изображение списка (a (() (b c) d) e)




                                            24