Реферат: Реализация связанных списков на базе массивов

Refs(i) = i + 1 'как свободное место

Next i

Refs(NullFreeSpace) = OldLength + 1

Refs(OldLength * 2) = NullFreeSpace

End If

i = Refs(NullFreeSpace)

Link NullFreeSpace, Refs(i)

GetSpace = i

End Function

' освобождение места при удалении элемента из списка

Private Sub PutSpace(i As Integer)

Link i, Refs(NullFreeSpace)

Link NullFreeSpace, i

End Sub

' добавить element в список

Sub AddItem(element As Double)

Dim i As Integer

i = GetSpace() ' получаемсвободноеместо

Link AFTER, i ' устанавливаем его в

Link i, BEFORE ' нужном месте списка

BEFORE = i ' устанавливаем указатель

Elems(i) = element ' добавляем элемент element в список

MoveNext

Count = Count + 1 ' увеличиваем счетчик количества элементов

End Sub

'удалить элемент из списка

Sub RemoveItem()

Dim i As Integer

If Count <> 0 Then

К-во Просмотров: 309
Бесплатно скачать Реферат: Реализация связанных списков на базе массивов