Documentation ¶
Index ¶
- type BinarySearchTree
- type BinaryTree
- func (bt *BinaryTree[T]) BottomViewIterator() iterator.Iterator[T]
- func (bt *BinaryTree[T]) Clear()
- func (bt *BinaryTree[T]) Clone() Tree[T]
- func (bt *BinaryTree[T]) Count() int
- func (bt *BinaryTree[T]) Delete(e T) error
- func (bt *BinaryTree[T]) DeleteCompare(e T, c comparator.Comparator[T]) error
- func (bt *BinaryTree[T]) Diameter() int
- func (bt *BinaryTree[T]) Empty() bool
- func (bt *BinaryTree[T]) Equal(t Tree[T]) (bool, error)
- func (bt *BinaryTree[T]) Height() int
- func (bt *BinaryTree[T]) InOrderIterator() iterator.Iterator[T]
- func (bt *BinaryTree[T]) InOrderSuccessor(e T) (T, error)
- func (bt *BinaryTree[T]) Insert(e T)
- func (bt *BinaryTree[T]) InsertCompare(e T, c comparator.Comparator[T])
- func (bt *BinaryTree[T]) Invert()
- func (bt *BinaryTree[T]) IsBalanced() bool
- func (bt *BinaryTree[T]) IsComplete() bool
- func (bt *BinaryTree[T]) IsFull() bool
- func (bt *BinaryTree[T]) IsPerfect() bool
- func (bt *BinaryTree[T]) LeftViewIterator() iterator.Iterator[T]
- func (bt *BinaryTree[T]) LevelOrderIterator() iterator.Iterator[T]
- func (bt *BinaryTree[T]) LevelOrderSuccessor(e T) (T, error)
- func (bt *BinaryTree[T]) LowestCommonAncestor(a, b T) (T, error)
- func (bt *BinaryTree[T]) Mirror() (bool, error)
- func (bt *BinaryTree[T]) MirrorAt(e T) (bool, error)
- func (bt *BinaryTree[T]) Mode() (list.List[T], error)
- func (bt *BinaryTree[T]) Paths() ([][]T, error)
- func (bt *BinaryTree[T]) PostOrderIterator() iterator.Iterator[T]
- func (bt *BinaryTree[T]) PostOrderSuccessor(e T) (T, error)
- func (bt *BinaryTree[T]) PreOrderIterator() iterator.Iterator[T]
- func (bt *BinaryTree[T]) PreOrderSuccessor(e T) (T, error)
- func (bt *BinaryTree[T]) RightViewIterator() iterator.Iterator[T]
- func (bt *BinaryTree[T]) RotateLeft() error
- func (bt *BinaryTree[T]) RotateLeftAt(e T) error
- func (bt *BinaryTree[T]) RotateRight() error
- func (bt *BinaryTree[T]) RotateRightAt(e T) error
- func (bt *BinaryTree[T]) Search(e T) (bool, error)
- func (bt *BinaryTree[T]) SearchCompare(e T, c comparator.Comparator[T]) (bool, error)
- func (bt *BinaryTree[T]) Symmetric() bool
- func (bt *BinaryTree[T]) TopViewIterator() iterator.Iterator[T]
- func (bt *BinaryTree[T]) VerticalViewIterator() iterator.Iterator[T]
- type Tree
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BinarySearchTree ¶
type BinarySearchTree[T comparable] struct { *BinaryTree[T] // contains filtered or unexported fields }
func NewBinarySearchTree ¶
func NewBinarySearchTree[T comparable](c comparator.Comparator[T], e ...T) *BinarySearchTree[T]
func (*BinarySearchTree[T]) Delete ¶
func (bst *BinarySearchTree[T]) Delete(e T) error
func (*BinarySearchTree[T]) Insert ¶
func (bst *BinarySearchTree[T]) Insert(e T)
func (*BinarySearchTree[T]) Search ¶
func (bst *BinarySearchTree[T]) Search(e T) (bool, error)
type BinaryTree ¶
type BinaryTree[T comparable] struct { // contains filtered or unexported fields }
func NewBinaryTree ¶
func NewBinaryTree[T comparable](e ...T) *BinaryTree[T]
func (*BinaryTree[T]) BottomViewIterator ¶
func (bt *BinaryTree[T]) BottomViewIterator() iterator.Iterator[T]
TODO FIX EXPENSIVE IMPLEMENTATION
func (*BinaryTree[T]) Clear ¶
func (bt *BinaryTree[T]) Clear()
func (*BinaryTree[T]) Clone ¶
func (bt *BinaryTree[T]) Clone() Tree[T]
func (*BinaryTree[T]) Count ¶
func (bt *BinaryTree[T]) Count() int
func (*BinaryTree[T]) Delete ¶
func (bt *BinaryTree[T]) Delete(e T) error
func (*BinaryTree[T]) DeleteCompare ¶
func (bt *BinaryTree[T]) DeleteCompare(e T, c comparator.Comparator[T]) error
func (*BinaryTree[T]) Diameter ¶
func (bt *BinaryTree[T]) Diameter() int
func (*BinaryTree[T]) Empty ¶
func (bt *BinaryTree[T]) Empty() bool
func (*BinaryTree[T]) Height ¶
func (bt *BinaryTree[T]) Height() int
func (*BinaryTree[T]) InOrderIterator ¶
func (bt *BinaryTree[T]) InOrderIterator() iterator.Iterator[T]
func (*BinaryTree[T]) InOrderSuccessor ¶
func (bt *BinaryTree[T]) InOrderSuccessor(e T) (T, error)
func (*BinaryTree[T]) Insert ¶
func (bt *BinaryTree[T]) Insert(e T)
func (*BinaryTree[T]) InsertCompare ¶
func (bt *BinaryTree[T]) InsertCompare(e T, c comparator.Comparator[T])
func (*BinaryTree[T]) Invert ¶
func (bt *BinaryTree[T]) Invert()
func (*BinaryTree[T]) IsBalanced ¶
func (bt *BinaryTree[T]) IsBalanced() bool
func (*BinaryTree[T]) IsComplete ¶
func (bt *BinaryTree[T]) IsComplete() bool
func (*BinaryTree[T]) IsFull ¶
func (bt *BinaryTree[T]) IsFull() bool
func (*BinaryTree[T]) IsPerfect ¶
func (bt *BinaryTree[T]) IsPerfect() bool
func (*BinaryTree[T]) LeftViewIterator ¶
func (bt *BinaryTree[T]) LeftViewIterator() iterator.Iterator[T]
func (*BinaryTree[T]) LevelOrderIterator ¶
func (bt *BinaryTree[T]) LevelOrderIterator() iterator.Iterator[T]
func (*BinaryTree[T]) LevelOrderSuccessor ¶
func (bt *BinaryTree[T]) LevelOrderSuccessor(e T) (T, error)
func (*BinaryTree[T]) LowestCommonAncestor ¶
func (bt *BinaryTree[T]) LowestCommonAncestor(a, b T) (T, error)
func (*BinaryTree[T]) Mirror ¶
func (bt *BinaryTree[T]) Mirror() (bool, error)
func (*BinaryTree[T]) MirrorAt ¶
func (bt *BinaryTree[T]) MirrorAt(e T) (bool, error)
func (*BinaryTree[T]) Paths ¶
func (bt *BinaryTree[T]) Paths() ([][]T, error)
func (*BinaryTree[T]) PostOrderIterator ¶
func (bt *BinaryTree[T]) PostOrderIterator() iterator.Iterator[T]
func (*BinaryTree[T]) PostOrderSuccessor ¶
func (bt *BinaryTree[T]) PostOrderSuccessor(e T) (T, error)
func (*BinaryTree[T]) PreOrderIterator ¶
func (bt *BinaryTree[T]) PreOrderIterator() iterator.Iterator[T]
func (*BinaryTree[T]) PreOrderSuccessor ¶
func (bt *BinaryTree[T]) PreOrderSuccessor(e T) (T, error)
func (*BinaryTree[T]) RightViewIterator ¶
func (bt *BinaryTree[T]) RightViewIterator() iterator.Iterator[T]
func (*BinaryTree[T]) RotateLeft ¶
func (bt *BinaryTree[T]) RotateLeft() error
func (*BinaryTree[T]) RotateLeftAt ¶
func (bt *BinaryTree[T]) RotateLeftAt(e T) error
func (*BinaryTree[T]) RotateRight ¶
func (bt *BinaryTree[T]) RotateRight() error
func (*BinaryTree[T]) RotateRightAt ¶
func (bt *BinaryTree[T]) RotateRightAt(e T) error
func (*BinaryTree[T]) Search ¶
func (bt *BinaryTree[T]) Search(e T) (bool, error)
func (*BinaryTree[T]) SearchCompare ¶
func (bt *BinaryTree[T]) SearchCompare(e T, c comparator.Comparator[T]) (bool, error)
func (*BinaryTree[T]) Symmetric ¶
func (bt *BinaryTree[T]) Symmetric() bool
func (*BinaryTree[T]) TopViewIterator ¶
func (bt *BinaryTree[T]) TopViewIterator() iterator.Iterator[T]
TODO FIX EXPENSIVE IMPLEMENTATION
func (*BinaryTree[T]) VerticalViewIterator ¶
func (bt *BinaryTree[T]) VerticalViewIterator() iterator.Iterator[T]
TODO FIX EXPENSIVE IMPLEMENTATION
type Tree ¶
type Tree[T comparable] interface { Insert(e T) Delete(e T) error Search(e T) (bool, error) Count() int Height() int Diameter() int Empty() bool Clear() Clone() Tree[T] IsFull() bool IsBalanced() bool IsPerfect() bool IsComplete() bool LowestCommonAncestor(a, b T) (T, error) Paths() ([][]T, error) // TEMPORARY Mode() (list.List[T], error) Equal(t Tree[T]) (bool, error) InOrderSuccessor(e T) (T, error) PreOrderSuccessor(e T) (T, error) PostOrderSuccessor(e T) (T, error) LevelOrderSuccessor(e T) (T, error) PreOrderIterator() iterator.Iterator[T] PostOrderIterator() iterator.Iterator[T] InOrderIterator() iterator.Iterator[T] LevelOrderIterator() iterator.Iterator[T] VerticalViewIterator() iterator.Iterator[T] LeftViewIterator() iterator.Iterator[T] RightViewIterator() iterator.Iterator[T] TopViewIterator() iterator.Iterator[T] BottomViewIterator() iterator.Iterator[T] }
Click to show internal directories.
Click to hide internal directories.