Struct steap_by_steap::unionfind::UnionFind
source · pub struct UnionFind {
parent: Vec<usize>,
rank: Vec<usize>,
}
Expand description
The Union-Find structure is used to efficiently manage and merge disjoint sets. This module provides an implementation of the Union-Find (disjoint set) data structure.
Fields§
§parent: Vec<usize>
The parent array, where parent[i] points to the parent of node i. If parent[i] == i, then i is a root.
rank: Vec<usize>
The rank array, used to keep the tree flat by storing the depth of the tree for each node.
Implementations§
Trait Implementations§
source§impl HasPyGilRef for UnionFind
impl HasPyGilRef for UnionFind
§type AsRefTarget = PyCell<UnionFind>
type AsRefTarget = PyCell<UnionFind>
Utility type to make Py::as_ref work.
source§impl PyClassImpl for UnionFind
impl PyClassImpl for UnionFind
source§const IS_BASETYPE: bool = false
const IS_BASETYPE: bool = false
#[pyclass(subclass)]
source§const IS_SUBCLASS: bool = false
const IS_SUBCLASS: bool = false
#[pyclass(extends=…)]
source§const IS_MAPPING: bool = false
const IS_MAPPING: bool = false
#[pyclass(mapping)]
source§const IS_SEQUENCE: bool = false
const IS_SEQUENCE: bool = false
#[pyclass(sequence)]
§type ThreadChecker = SendablePyClass<UnionFind>
type ThreadChecker = SendablePyClass<UnionFind>
This handles following two situations: Read more
§type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::MutableChild
type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::MutableChild
Immutable or mutable
§type Dict = PyClassDummySlot
type Dict = PyClassDummySlot
Specify this class has
#[pyclass(dict)]
or not.§type WeakRef = PyClassDummySlot
type WeakRef = PyClassDummySlot
Specify this class has
#[pyclass(weakref)]
or not.§type BaseNativeType = PyAny
type BaseNativeType = PyAny
The closest native ancestor. This is
PyAny
by default, and when you declare
#[pyclass(extends=PyDict)]
, it’s PyDict
.fn items_iter() -> PyClassItemsIter
fn lazy_type_object() -> &'static LazyTypeObject<Self>
fn dict_offset() -> Option<isize>
fn weaklist_offset() -> Option<isize>
source§impl PyClassNewTextSignature<UnionFind> for PyClassImplCollector<UnionFind>
impl PyClassNewTextSignature<UnionFind> for PyClassImplCollector<UnionFind>
fn new_text_signature(self) -> Option<&'static str>
source§impl<'a, 'py> PyFunctionArgument<'a, 'py> for &'a UnionFind
impl<'a, 'py> PyFunctionArgument<'a, 'py> for &'a UnionFind
source§impl<'a, 'py> PyFunctionArgument<'a, 'py> for &'a mut UnionFind
impl<'a, 'py> PyFunctionArgument<'a, 'py> for &'a mut UnionFind
source§impl PyMethods<UnionFind> for PyClassImplCollector<UnionFind>
impl PyMethods<UnionFind> for PyClassImplCollector<UnionFind>
fn py_methods(self) -> &'static PyClassItems
source§impl PyTypeInfo for UnionFind
impl PyTypeInfo for UnionFind
source§fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
Returns the PyTypeObject instance for this type.
source§fn type_object(py: Python<'_>) -> &PyType
fn type_object(py: Python<'_>) -> &PyType
👎Deprecated since 0.21.0:
PyTypeInfo::type_object
will be replaced by PyTypeInfo::type_object_bound
in a future PyO3 versionReturns the safe abstraction over the type object.
source§fn type_object_bound(py: Python<'_>) -> Bound<'_, PyType>
fn type_object_bound(py: Python<'_>) -> Bound<'_, PyType>
Returns the safe abstraction over the type object.
source§fn is_type_of(object: &PyAny) -> bool
fn is_type_of(object: &PyAny) -> bool
👎Deprecated since 0.21.0:
PyTypeInfo::is_type_of
will be replaced by PyTypeInfo::is_type_of_bound
in a future PyO3 versionChecks if
object
is an instance of this type or a subclass of this type.source§fn is_type_of_bound(object: &Bound<'_, PyAny>) -> bool
fn is_type_of_bound(object: &Bound<'_, PyAny>) -> bool
Checks if
object
is an instance of this type or a subclass of this type.source§fn is_exact_type_of(object: &PyAny) -> bool
fn is_exact_type_of(object: &PyAny) -> bool
👎Deprecated since 0.21.0:
PyTypeInfo::is_exact_type_of
will be replaced by PyTypeInfo::is_exact_type_of_bound
in a future PyO3 versionChecks if
object
is an instance of this type.impl DerefToPyAny for UnionFind
Auto Trait Implementations§
impl Freeze for UnionFind
impl RefUnwindSafe for UnionFind
impl Send for UnionFind
impl Sync for UnionFind
impl Unpin for UnionFind
impl UnwindSafe for UnionFind
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more