# Source Map — 10 Disjoint Set Union

এই folder-এর প্রতিটা idea, link, আর problem reference, তার origin আর copying status সহ। এই repo-তে problem descriptions সবসময় আমাদের নিজের ভাষায় rewrite করা; links official statements-এ point করে।

| Concept / Problem | Source Type | Source Name | Link | How it is used | Copying status |
| --- | --- | --- | --- | --- | --- |
| Friend-circles party analogy | Original | This repo | — | concept.md-তে শুরুর analogy | original explanation |
| Parent-array forest, find/union mechanics | Textbook-common knowledge | Standard CS curriculum; see also Open Data Structures | [উৎস খুলুন](https://opendatastructures.org/) | concept.md-তে memory picture | original explanation |
| Path compression and union by size/rank | Reference write-up | cp-algorithms, Disjoint Set Union | [উৎস খুলুন](https://cp-algorithms.com/data_structures/disjoint_set_union.html) | concept.md-তে optimizations; আমাদের লেখা independent | original explanation |
| Path halving variant in find | Reference write-up | cp-algorithms, Disjoint Set Union | [উৎস খুলুন](https://cp-algorithms.com/data_structures/disjoint_set_union.html) | implementation.py-তে code form + visual-explanation.md-তে note | original explanation |
| Inverse Ackermann α(n) friendly note | Textbook-common knowledge | Standard analysis (Tarjan); friendly framing ours | [উৎস খুলুন](https://en.wikipedia.org/wiki/Disjoint-set_data_structure) | concept.md-তে "≤ 4 for any practical n" note | original explanation |
| Union/find frame-by-frame diagrams | Original | This repo | — | visual-explanation.md-র সব frame | original explanation |
| Interactive Union-Find animation | Visualizer | VisuAlgo (Union-Find module) | [উৎস খুলুন](https://visualgo.net/en) | README.md আর visual-explanation.md-তে recommended | official link only |
| Kruskal's MST uses DSU as cycle guard | Textbook-common knowledge | Standard CS curriculum | [উৎস খুলুন](https://en.wikipedia.org/wiki/Kruskal%27s_algorithm) | concept.md-তে Pattern C | original explanation |
| Reverse-time (offline) deletion trick | Competitive-programming folklore | Covered across CP resources, e.g. USACO Guide | [উৎস খুলুন](https://usaco.guide/) | concept.md-তে Pattern E teaser | original explanation |
| Redundant Connection | Online judge | LeetCode 684 | [উৎস খুলুন](https://leetcode.com/problems/redundant-connection/) | Cycle-detection pattern + practice list | rewritten problem |
| Redundant Connection II | Online judge | LeetCode 685 | [উৎস খুলুন](https://leetcode.com/problems/redundant-connection-ii/) | Hard practice list | rewritten problem |
| Number of Provinces | Online judge | LeetCode 547 | [উৎস খুলুন](https://leetcode.com/problems/number-of-provinces/) | Component-count practice; DSU vs DFS comparison | rewritten problem |
| Find if Path Exists in Graph | Online judge | LeetCode 1971 | [উৎস খুলুন](https://leetcode.com/problems/find-if-path-exists-in-graph/) | Easy connectivity practice | rewritten problem |
| Accounts Merge | Online judge | LeetCode 721 | [উৎস খুলুন](https://leetcode.com/problems/accounts-merge/) | Grouping pattern + practice list | rewritten problem |
| Satisfiability of Equality Equations | Online judge | LeetCode 990 | [উৎস খুলুন](https://leetcode.com/problems/satisfiability-of-equality-equations/) | Equivalence-relation practice | rewritten problem |
| Smallest String With Swaps | Online judge | LeetCode 1202 | [উৎস খুলুন](https://leetcode.com/problems/smallest-string-with-swaps/) | Grouping practice | rewritten problem |
| Most Stones Removed with Same Row or Column | Online judge | LeetCode 947 | [উৎস খুলুন](https://leetcode.com/problems/most-stones-removed-with-same-row-or-column/) | Creative-keys practice | rewritten problem |
| Number of Operations to Make Network Connected | Online judge | LeetCode 1319 | [উৎস খুলুন](https://leetcode.com/problems/number-of-operations-to-make-network-connected/) | Components + spare edges practice | rewritten problem |
| Graph Valid Tree | Online judge | LeetCode 261 | [উৎস খুলুন](https://leetcode.com/problems/graph-valid-tree/) | Cycle + count practice | rewritten problem |
| Number of Islands / Number of Islands II | Online judge | LeetCode 200 / 305 | [উৎস খুলুন](https://leetcode.com/problems/number-of-islands/) | Grid DSU practice; streaming variant | rewritten problem |
| Making A Large Island | Online judge | LeetCode 827 | [উৎস খুলুন](https://leetcode.com/problems/making-a-large-island/) | Size-tracking practice | rewritten problem |
| Swim in Rising Water | Online judge | LeetCode 778 | [উৎস খুলুন](https://leetcode.com/problems/swim-in-rising-water/) | Kruskal-flavor threshold practice | rewritten problem |
| Building Roads | Online judge | CSES task 1666 | [উৎস খুলুন](https://cses.fi/problemset/task/1666) | "components − 1" practice + implementation.py-তে demo | rewritten problem |
| Road Construction | Online judge | CSES Problem Set (task name given) | [উৎস খুলুন](https://cses.fi/problemset/task/1676) | Dynamic-connectivity practice | rewritten problem |
| General CP DSU ladder | Online judge | Codeforces problemset | [উৎস খুলুন](https://codeforces.com/problemset/) | CP-connection section-এর pointer | official link only |
