@@ -86,7 +86,7 @@ def DisjointSet(arg):
86
86
87
87
INPUT:
88
88
89
- - ``arg`` -- non negative integer or an iterable of hashable objects.
89
+ - ``arg`` -- non negative integer or an iterable of hashable objects.
90
90
91
91
EXAMPLES:
92
92
@@ -141,6 +141,7 @@ def DisjointSet(arg):
141
141
else :
142
142
return DisjointSet_of_hashables(arg)
143
143
144
+
144
145
cdef class DisjointSet_class(SageObject):
145
146
r """
146
147
Common class and methods for :class:`DisjointSet_of_integers` and
@@ -398,7 +399,7 @@ cdef class DisjointSet_of_integers(DisjointSet_class):
398
399
"""
399
400
l = []
400
401
cdef int i
401
- for i from 0 <= i < self .cardinality():
402
+ for i in range ( self .cardinality() ):
402
403
l.append(self ._nodes.parent[i])
403
404
return l
404
405
@@ -439,7 +440,7 @@ cdef class DisjointSet_of_integers(DisjointSet_class):
439
440
sage: d
440
441
{{0, 1, 2, 3}, {4} }
441
442
"""
442
- for i,parent in enumerate (l):
443
+ for i, parent in enumerate (l):
443
444
self .union(parent, i)
444
445
445
446
def find (self , int i ):
@@ -491,8 +492,8 @@ cdef class DisjointSet_of_integers(DisjointSet_class):
491
492
492
493
INPUT:
493
494
494
- - ``i`` - element in ``self``
495
- - ``j`` - element in ``self``
495
+ - ``i`` - - element in ``self``
496
+ - ``j`` - - element in ``self``
496
497
497
498
EXAMPLES::
498
499
@@ -515,9 +516,9 @@ cdef class DisjointSet_of_integers(DisjointSet_class):
515
516
"""
516
517
cdef int card = self ._nodes.degree
517
518
if i < 0 or i >= card:
518
- raise ValueError (' i(=%s ) must be between 0 and %s ' % (i, card- 1 ))
519
+ raise ValueError (' i(=%s ) must be between 0 and %s ' % (i, card - 1 ))
519
520
if j < 0 or j >= card:
520
- raise ValueError (' j(=%s ) must be between 0 and %s ' % (j, card- 1 ))
521
+ raise ValueError (' j(=%s ) must be between 0 and %s ' % (j, card - 1 ))
521
522
OP_join(self ._nodes, i, j)
522
523
523
524
def root_to_elements_dict (self ):
@@ -541,7 +542,7 @@ cdef class DisjointSet_of_integers(DisjointSet_class):
541
542
"""
542
543
s = {}
543
544
cdef int i
544
- for i from 0 <= i < self .cardinality():
545
+ for i in range ( self .cardinality() ):
545
546
o = self .find(i)
546
547
if o not in s:
547
548
s[o] = []
@@ -565,7 +566,7 @@ cdef class DisjointSet_of_integers(DisjointSet_class):
565
566
"""
566
567
d = {}
567
568
cdef int i
568
- for i from 0 <= i < self .cardinality():
569
+ for i in range ( self .cardinality() ):
569
570
d[i] = self .find(i)
570
571
return d
571
572
@@ -597,11 +598,8 @@ cdef class DisjointSet_of_integers(DisjointSet_class):
597
598
{{0} , {1, 2, 3, 4}}
598
599
sage: d. to_digraph( ) . edges( sort=True)
599
600
[(0, 0, None), (1, 1, None), (2, 1, None), (3, 1, None), (4, 1, None) ]
600
-
601
601
"""
602
- d = {}
603
- for i from 0 <= i < self .cardinality():
604
- d[i] = [self ._nodes.parent[i]]
602
+ d = {i: [self ._nodes.parent[i]] for i in range (self .cardinality())}
605
603
from sage.graphs.graph import DiGraph
606
604
return DiGraph(d)
607
605
@@ -639,7 +637,7 @@ cdef class DisjointSet_of_hashables(DisjointSet_class):
639
637
640
638
INPUT:
641
639
642
- - ``iterable`` -- An iterable of hashable objects.
640
+ - ``iterable`` -- An iterable of hashable objects.
643
641
644
642
EXAMPLES::
645
643
@@ -654,7 +652,7 @@ cdef class DisjointSet_of_hashables(DisjointSet_class):
654
652
"""
655
653
self ._int_to_el = []
656
654
self ._el_to_int = {}
657
- for (i,e) in enumerate (iterable):
655
+ for i, e in enumerate (iterable):
658
656
self ._int_to_el.append(e)
659
657
self ._el_to_int[e] = i
660
658
self ._d = DisjointSet_of_integers(len (self ._int_to_el))
@@ -716,7 +714,7 @@ cdef class DisjointSet_of_hashables(DisjointSet_class):
716
714
gs = self ._d.__getstate__()
717
715
l = []
718
716
cdef int i
719
- for i from 0 <= i < self .cardinality():
717
+ for i in range ( self .cardinality() ):
720
718
l.append(self ._int_to_el[gs[i]])
721
719
return list (zip (self ._int_to_el, l))
722
720
@@ -743,7 +741,7 @@ cdef class DisjointSet_of_hashables(DisjointSet_class):
743
741
sage: d
744
742
{{'a', 'b', 'c', 'd', 'e'}}
745
743
"""
746
- for a,b in l:
744
+ for a, b in l:
747
745
self .union(a, b)
748
746
749
747
def find (self , e ):
@@ -794,8 +792,8 @@ cdef class DisjointSet_of_hashables(DisjointSet_class):
794
792
795
793
INPUT:
796
794
797
- - ``e`` - element in ``self``
798
- - ``f`` - element in ``self``
795
+ - ``e`` - - element in ``self``
796
+ - ``f`` - - element in ``self``
799
797
800
798
EXAMPLES::
801
799
@@ -889,7 +887,7 @@ cdef class DisjointSet_of_hashables(DisjointSet_class):
889
887
[(0, 0, None), (1, 1, None), (2, 1, None), (3, 1, None), (4, 1, None) ]
890
888
"""
891
889
d = {}
892
- for i from 0 <= i < self .cardinality():
890
+ for i in range ( self .cardinality() ):
893
891
e = self ._int_to_el[i]
894
892
p = self ._int_to_el[self ._nodes.parent[i]]
895
893
d[e] = [p]
0 commit comments