package linear

import "gonum.org/v1/gonum/graph/internal/linear"

Package linear provides common linear data structures.

Index

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.

Source Files

doc.go linear.go

Version
v0.15.1 (latest)
Published
Aug 16, 2024
Platform
linux/amd64
Imports
1 packages
Last checked
1 day ago

Tools for package owners.