code: def union(self, label_a, label_b):
          
          # Base case to avoid work
          if label_a == label_b:
              return
  
          # Find the tree root of each node
          root_a = self.find(label_a)
          root_b = self.find(label_b)
  
          # Avoid merging a tree to itself
          if root_a == root_b:
              return
  
          self.__internal_union(root_a, root_b)
          self.__set_counter -= 1
docs: Joins two sets into a single new set.
          label_a, label_b can be any nodes within the sets