Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
49
Добавлен:
12.03.2015
Размер:
276.48 Кб
Скачать

Программирование и структуры данных

2007 г.

СТРУКТУРЫ ДАННЫХ

Лекция 2.

ОБРАБОТКА СПИСКОВ

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.

КГТУ (КАИ), кафедра АСОИУ

1

Программирование и структуры данных

2007 г.

 

Обработка списков

Список (связанный)

это способ хранения данных в виде последовательности элементов, где каждый элемент содержит:

информацию – значение элемента,

указатель – местоположение

следующего элемента.

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.

КГТУ (КАИ), кафедра АСОИУ

2

Программирование и структуры данных

 

2007 г.

 

 

 

Обработка списков

 

Составные части списка

 

 

 

Элементы списка

 

 

 

 

 

. . .

 

0

Указатель

Значение

Указатель

Пустой

 

списка

элемента

следующего

указатель

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.

КГТУ (КАИ), кафедра АСОИУ

3

Программирование и структуры данных

 

2007 г.

 

 

Обработка списков

Строка символов в виде списка

‘С’

‘О’

‘Н’

0

Указатель

 

Пустой указатель

списка

 

 

– конец строки

 

 

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.

КГТУ (КАИ), кафедра АСОИУ

4

Программирование и структуры данных

2007 г.

Представление списка в памяти

Символ

Элемент списка

Ссылка

Адрес

Ячейка

Адрес

Ячейка

2101

‘O’

2109

‘Н'

2102

2109

2110

0000

2103

 

2111

 

 

2104

 

2112

 

 

2105

 

2113

‘С'

2106

 

2114

2101

2107

 

 

 

 

2108

 

Указатель

2113

 

 

списка

 

 

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.

КГТУ (КАИ), кафедра АСОИУ

5

 

Программирование и структуры данных

 

 

2007 г.

 

 

 

Обработка списков

Включение элемента в список

‘С’

 

‘О’

‘Н’

0

Указатель

‘Л’

 

Пустой указатель

списка

 

 

 

– конец строки

 

 

 

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.

 

КГТУ (КАИ), кафедра АСОИУ

6

Программирование и структуры данных

2007 г.

Включение элемента в памяти

Символ

Элемент списка

Ссылка

Адрес

Ячейка

Адрес

Ячейка

2101

‘O’

2109

‘Н'

2102

2109

2110

0000

2103

 

2111

 

 

 

2104

 

2112

 

 

 

2105

‘Л’

2113

‘С'

2106

2101

2114

2101

2105

2107

 

 

 

 

 

2108

 

Указатель

2113

 

 

списка

 

 

 

 

 

 

 

 

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.

КГТУ (КАИ), кафедра АСОИУ

7

 

 

Программирование и структуры данных

 

2007 г.

 

Обработка списков

Циклический список

 

 

. . .

 

Указатель

 

 

списка

 

 

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.

КГТУ (КАИ), кафедра АСОИУ

8

Программирование и структуры данных

2007 г.

Описание данных для списков с использованием ссылочных переменных

struct el_sp

// Тип элемента списка

{ char zn;

// Значение элемента

struct el_sp *uk;

// Указатель следующего элемента

};

 

struct el_sp *p; struct el_sp *i, *j;

char sim;

//Указатель списка

//Указатели элементов

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.

КГТУ (КАИ), кафедра АСОИУ

9

Программирование и структуры данных

2007 г.

Обозначения:

p- указатель списка (адрес 1-го эл-та)

*p – 1-й элемент

(*p).zn

– поле значения 1-го эл-та

p->zn

- поле значения 1-го эл-та

(*p).uk

– поле указателя 1-го эл-та (адрес 2-го

 

 

эл-та)

p->uk

-

поле указателя 1-го эл-та (адрес 2-го

 

 

эл-та)

p->uk->zn

– поле значения 2-го эл-та

p->uk->uk

– поле указателя 2-го эл-та

*i - элемент списка, на который ссылается указатель i i-> zn – поле значения элемента *i

i->uk – поле указателя элемента *i

Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г.

КГТУ (КАИ), кафедра АСОИУ

1

 

 

0

Соседние файлы в папке Презентация лекций (3 семестр)