linked

package
v0.0.0-...-5e56d49 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 24, 2021 License: MIT Imports: 2 Imported by: 0

Documentation

Index

Constants

View Source
const (
	FOUND_TYPE_NOT_FOUND = 0
	FOUND_TYPE_FOUND     = 1
	FOUND_TYPE_PREV      = -2
	FOUND_TYPE_NEXT      = 2
)

Variables

This section is empty.

Functions

This section is empty.

Types

type SortedLinkedList

type SortedLinkedList struct {
	// contains filtered or unexported fields
}

SortedLinkedList - изменяемый список чисел с поддержкой работы в режиме set на основе связанного списка

func New

func New() *SortedLinkedList

New - конструктор для SortedLinkedList isUnique - признак, что значения должны быть уникальными lazySort - признак, что сортировка производится только в момент чтения

func (*SortedLinkedList) Delete

func (l *SortedLinkedList) Delete(value int, all bool) bool

Delete - удаление элемента из связанного списка

func (*SortedLinkedList) FindItemFor

func (l *SortedLinkedList) FindItemFor(value int) (*SortedLinkedListItem, int)

func (*SortedLinkedList) GetAll

func (l *SortedLinkedList) GetAll() []int

func (*SortedLinkedList) GetMax

func (l *SortedLinkedList) GetMax() (int, error)

func (*SortedLinkedList) GetMin

func (l *SortedLinkedList) GetMin() (int, error)

func (*SortedLinkedList) GetUnique

func (l *SortedLinkedList) GetUnique() []int

GetUnique - получить срез только уникальных упорядоченных чисел из индекса

func (*SortedLinkedList) Head

Head - указатель на начальный элемент индекса

func (*SortedLinkedList) Insert

func (l *SortedLinkedList) Insert(value int) bool

Insert - добавляет элемент в SortedLinkedList, всегда в сортированном порядке если массив - уникальный, то если число уже есть - оно не добавляется, иначе всегда добавляется

func (*SortedLinkedList) InsertAll

func (l *SortedLinkedList) InsertAll(values []int)

InsertAll - вставка всех элементов из среза

func (*SortedLinkedList) InsertAllVar

func (l *SortedLinkedList) InsertAllVar(values ...int)

InsertAllVar - вставка всех элементов из variadic

func (*SortedLinkedList) IsIntRangeInitialized

func (l *SortedLinkedList) IsIntRangeInitialized() bool

func (*SortedLinkedList) Size

func (l *SortedLinkedList) Size() int

Size - количество всех чисел в индексе без учета уникальности

func (*SortedLinkedList) Tail

Tail - указатель на последний элемент индекса

func (*SortedLinkedList) UniqueSize

func (l *SortedLinkedList) UniqueSize() int

UniqueSize - количество узлов значений в индексе, по сути число уникальных элементов

type SortedLinkedListItem

type SortedLinkedListItem struct {
	// contains filtered or unexported fields
}

SortedLinkedListItem - внутренний элемент индекса, хранит в себе значение, количество копий значения и указатель на соседние элементы индекса с меньшими и большими значениями соответственно

func NewSortedLinkedListItem

func NewSortedLinkedListItem(value int) *SortedLinkedListItem

func NewSortedLinkedListItemC

func NewSortedLinkedListItemC(value int, count int) *SortedLinkedListItem

func (*SortedLinkedListItem) Count

func (l *SortedLinkedListItem) Count() int

Count - количество значений Value

func (*SortedLinkedListItem) Dec

func (l *SortedLinkedListItem) Dec()

func (*SortedLinkedListItem) Delete

func (l *SortedLinkedListItem) Delete()

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

func (*SortedLinkedListItem) Inc

func (l *SortedLinkedListItem) Inc()

func (*SortedLinkedListItem) InsertLeft

func (l *SortedLinkedListItem) InsertLeft(value int)

InsertLeft - добавляет элемент слева

func (*SortedLinkedListItem) InsertRight

func (l *SortedLinkedListItem) InsertRight(value int)

InsertRight - добавляет элемент справа

func (*SortedLinkedListItem) Next

Next - указатель на следующий элемент индекса

func (*SortedLinkedListItem) Prev

Prev - указатель на предыдущий элемент индекса

func (*SortedLinkedListItem) Value

func (l *SortedLinkedListItem) Value() int

Value - значение числа в SortedLinkedListItem

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL