linear

package
v0.8.14 Latest Latest
Warning

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

Go to latest
Published: Dec 2, 2023 License: BSD-3-Clause Imports: 1 Imported by: 0

Documentation

Overview

Package linear provides common linear data structures.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type NodeQueue

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

NodeQueue implements a FIFO queue.

func (*NodeQueue) Dequeue

func (q *NodeQueue) Dequeue() graph.Node

Dequeue returns the graph.Node at the front of the queue and removes it from the queue.

func (*NodeQueue) Enqueue

func (q *NodeQueue) Enqueue(n graph.Node)

Enqueue adds the node n to the back of the queue.

func (*NodeQueue) Len

func (q *NodeQueue) Len() int

Len returns the number of graph.Nodes in the queue.

func (*NodeQueue) Reset

func (q *NodeQueue) Reset()

Reset clears the queue for reuse.

type NodeStack

type NodeStack []graph.Node

NodeStack implements a LIFO stack of graph.Node.

func (*NodeStack) Len

func (s *NodeStack) Len() int

Len returns the number of graph.Nodes on the stack.

func (*NodeStack) Pop

func (s *NodeStack) Pop() graph.Node

Pop returns the last graph.Node on the stack and removes it from the stack.

func (*NodeStack) Push

func (s *NodeStack) Push(n graph.Node)

Push adds the node n to the stack at the last position.

Jump to

Keyboard shortcuts

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