qiskit_addon_cutting.utils.iteration.unique_by_eq¶
- unique_by_eq(iterable, /)[source]¶
Return unique objects in
iterable
, by equality.This function is only appropriate if (i) there are a small number of objects, and (ii) the objects are not guaranteed to be hashable. Otherwise, a
dict
orset
is a better choice.This function may potentially make a comparison between all pairs of elements, so it executes in \(O(n^2)\) time in the worst case, in contrast to a
dict
orset
, both of which can be constructed in \(O(n)\) time.>>> a = {0} >>> list(unique_by_eq([a, a])) [{0}] :rtype: :sphinx_autodoc_typehints_type:`\:py\:class\:\`list\``
>>> list(unique_by_eq([a, a.copy()])) [{0}]