Counts the number of disjoint sets. @return the number of disjoint sets
()
| 87 | * @return the number of disjoint sets |
| 88 | */ |
| 89 | public int count() { |
| 90 | List<Integer> parents = new ArrayList<>(); |
| 91 | for (int i = 0; i < p.length; i++) { |
| 92 | int root = find(i); |
| 93 | if (!parents.contains(root)) { |
| 94 | parents.add(root); |
| 95 | } |
| 96 | } |
| 97 | return parents.size(); |
| 98 | } |
| 99 | |
| 100 | @Override |
| 101 | public String toString() { |