[proofplan]
We identify $H_0(K) = C_0(K) / \operatorname{im} d_1$ with the free abelian group on the path components of $K$. First we show that two vertices $v, w \in V_K$ represent the same class in $H_0(K)$ if and only if there is a combinatorial edge path from $v$ to $w$ in the $1$-skeleton of $K$; this follows from analysing the boundary operator $d_1$ on a $1$-chain and telescoping. Second we observe that an edge path from $v$ to $w$ exists if and only if $v$ and $w$ lie in the same path component of $K$. Finally, choosing one representative vertex per component gives a basis of $H_0(K)$, so $H_0(K) \cong \mathbb{Z}^d$ where $d$ is the number of path components.
[/proofplan]
[step:Set up notation and compute $H_0$ as the quotient $C_0(K) / \operatorname{im} d_1$]
By the definition of simplicial homology, the $0$th homology group is
\begin{align*}
H_0(K) = Z_0(K) / B_0(K) = \ker d_0 \, / \, \operatorname{im} d_1.
\end{align*}
The boundary map $d_0 : C_0(K) \to 0$ is the zero map (there are no $(-1)$-simplices), so $\ker d_0 = C_0(K)$. Hence
\begin{align*}
H_0(K) = C_0(K) / \operatorname{im} d_1,
\end{align*}
where $C_0(K) = \mathbb{Z}\langle V_K \rangle$ is the free abelian group on the vertex set $V_K$, and $\operatorname{im} d_1 \subseteq C_0(K)$ is the subgroup generated by $d_1(\sigma) = w - v$ for each oriented edge $\sigma = \langle v, w \rangle$ of $K$.
Define the equivalence relation $\sim$ on $V_K$ by $v \sim w$ if and only if $[v] = [w]$ in $H_0(K)$, i.e. $w - v \in \operatorname{im} d_1$.
[/step]
[step:Characterise $v \sim w$ as the existence of a combinatorial edge path]
Let $E_K$ denote the set of oriented $1$-simplices of $K$, and for an oriented edge $e = \langle v, w \rangle$ let $e^{-1} := \langle w, v \rangle$ denote the opposite orientation. On $1$-chains, $d_1$ acts linearly and satisfies $d_1 \langle v, w \rangle = w - v$ and hence $d_1 \langle w, v \rangle = v - w = -d_1 \langle v, w \rangle$, so reversing orientation reverses the sign.
[claim:$v \sim w$ if and only if there is an edge path from $v$ to $w$ in $K$]
We prove both directions.
($\Leftarrow$) Suppose there is an edge path from $v$ to $w$, that is, a sequence of vertices $v = v_0, v_1, \ldots, v_k = w$ with $\langle v_{i-1}, v_i \rangle \in E_K$ or $\langle v_i, v_{i-1}\rangle \in E_K$ for each $i$. For each $i$, choose an oriented edge $e_i \in E_K$ with endpoints $\{v_{i-1}, v_i\}$; define $\varepsilon_i = +1$ if $e_i = \langle v_{i-1}, v_i \rangle$ and $\varepsilon_i = -1$ if $e_i = \langle v_i, v_{i-1} \rangle$. Set
\begin{align*}
c := \sum_{i=1}^k \varepsilon_i e_i \in C_1(K).
\end{align*}
We verify the identity $\varepsilon_i \, d_1 e_i = v_i - v_{i-1}$ in both cases. If $e_i = \langle v_{i-1}, v_i \rangle$ then $\varepsilon_i = +1$ and $d_1 e_i = v_i - v_{i-1}$, so $\varepsilon_i d_1 e_i = v_i - v_{i-1}$. If $e_i = \langle v_i, v_{i-1} \rangle$ then $\varepsilon_i = -1$ and $d_1 e_i = v_{i-1} - v_i$, so $\varepsilon_i d_1 e_i = -(v_{i-1} - v_i) = v_i - v_{i-1}$. In either case $\varepsilon_i d_1 e_i = v_i - v_{i-1}$. Therefore
\begin{align*}
d_1 c = \sum_{i=1}^k \varepsilon_i \, d_1 e_i = \sum_{i=1}^k (v_i - v_{i-1}) = v_k - v_0 = w - v,
\end{align*}
a telescoping sum. Hence $w - v \in \operatorname{im} d_1$, i.e. $v \sim w$.
($\Rightarrow$) Suppose $v \sim w$, so there exists $c \in C_1(K)$ with $d_1 c = w - v$. Write $c = \sum_{e \in E_K} n_e \, e$ with $n_e \in \mathbb{Z}$ and only finitely many nonzero. Define a formal edge path from $v$ to $w$ as follows: consider the multigraph $\Gamma$ on the vertex set $V_K$ with, for each oriented edge $e = \langle a, b \rangle \in E_K$, exactly $|n_e|$ unoriented edges between $a$ and $b$. We show $\Gamma$ connects $v$ to $w$.
For a vertex $u \in V_K$, let $\deg_\Gamma(u)$ denote the total number of edges of $\Gamma$ incident to $u$. Consider the coefficient of each vertex $u$ in $d_1 c = w - v$:
\begin{align*}
\text{coefficient of } u \text{ in } d_1 c = \sum_{e = \langle a, b\rangle \in E_K} n_e \left( \mathbb{1}_{\{b = u\}} - \mathbb{1}_{\{a = u\}} \right).
\end{align*}
By hypothesis this coefficient equals $+1$ if $u = w$, $-1$ if $u = v$, and $0$ otherwise (assuming $v \neq w$; if $v = w$ the claim is trivial). In particular, the sum of integer contributions at each $u \neq v, w$ vanishes, so the parity of $\deg_\Gamma(u)$ is even; similarly $\deg_\Gamma(v)$ and $\deg_\Gamma(w)$ have odd parity. By the standard Euler-path characterisation, a multigraph with exactly two odd-degree vertices admits a walk from one odd vertex to the other, so $\Gamma$ contains a walk from $v$ to $w$. Projecting this walk to $V_K$ gives an edge path in $K$ from $v$ to $w$.
[/claim]
[/step]
[step:Identify edge-path-connectedness with path-connectedness of $|K|$]
[claim:Two vertices $v, w \in V_K$ are connected by an edge path in $K$ if and only if they lie in the same path component of the geometric realisation $|K|$]
($\Rightarrow$) If $v = v_0, \ldots, v_k = w$ is an edge path, the concatenation of straight-line paths along the $1$-simplices $\langle v_{i-1}, v_i \rangle \subset |K|$ is a continuous path from $v$ to $w$ in $|K|$. Hence $v, w$ lie in the same path component.
($\Leftarrow$) Suppose $v$ and $w$ lie in the same path component $U$ of $|K|$. Let $V_U := V_K \cap U$. It suffices to show that $V_U$ is exactly the set of vertices reachable from $v$ by edge paths. Let $R(v) \subseteq V_K$ be the edge-path component of $v$. Then $R(v) \subseteq V_U$ by the previous direction. Conversely, consider the subcomplex $K_v \subseteq K$ spanned by simplices all of whose vertices lie in $R(v)$; its geometric realisation $|K_v| \subseteq |K|$ is path-connected (any point in a simplex $\langle a_0, \ldots, a_n\rangle \in K_v$ is connected via a straight line to $a_0 \in R(v)$, and any two vertices of $R(v)$ are connected in $|K_v|$ by the edge path lifted to $|K|$). Also, $|K_v|$ is closed in $|K|$ because $K_v$ is a subcomplex. The complement $|K| \setminus |K_v|$ is the union of the open simplices $\mathring{\sigma}$ for $\sigma \notin K_v$, which is open in $|K|$. Therefore $|K_v|$ is a clopen, path-connected subset of $|K|$ containing $v$, so $|K_v|$ contains the entire path component of $v$. Hence $V_U \subseteq |K_v| \cap V_K = R(v)$, as required.
[/claim]
[guided]
The question is: when do two vertices give the same homology class? The previous step reduced this to the existence of a $1$-chain $c$ with $d_1 c = w - v$, and then to the existence of a combinatorial edge path in the $1$-skeleton. We now upgrade "combinatorial edge path" to "topological path in $|K|$".
The forward direction ($\Rightarrow$) is immediate: an edge path gives a continuous piecewise-linear path in $|K|$ by concatenating line segments inside the $1$-simplices.
The reverse direction ($\Leftarrow$) is more delicate: a general continuous path in $|K|$ may wander through the interior of high-dimensional simplices and need not visit vertices. The trick is to use the subcomplex $K_v$ spanned by edge-path-reachable vertices. Its realisation $|K_v|$ is:
- **closed in $|K|$** — because subcomplexes are closed subsets of the geometric realisation (every simplex of $K$ meets $|K_v|$ in a face, which is closed),
- **open in $|K|$** — because if $x \in |K_v|$ lies in an open simplex $\mathring{\sigma}$ for some $\sigma \in K$, then every vertex of $\sigma$ must lie in $R(v)$ (otherwise a neighbourhood of $x$ in $\sigma$ would leave $|K_v|$; but a simplex with at least one vertex in $R(v)$ and at least one not in $R(v)$ has the entire simplex contradicting edge-path-closure since adjacency in the $1$-skeleton propagates),
- **path-connected** — contains $v$ and every vertex in $R(v)$, and each simplex retracts to any of its vertices.
A clopen, path-connected subset of a topological space is exactly a path component, so $|K_v|$ equals the path component of $v$ and $V_U = R(v)$.
This is the crucial bridge: path-connectedness in the continuous space $|K|$ is equivalent to edge-path-connectedness in the discrete vertex set $V_K$.
[/guided]
[/step]
[step:Assemble the isomorphism $H_0(K) \cong \mathbb{Z}^d$]
Combining the two claims, the equivalence relation $\sim$ on $V_K$ defined by $[v] = [w]$ in $H_0(K)$ coincides with the equivalence relation on $V_K$ of lying in the same path component of $|K|$.
Let $d$ denote the number of path components of $|K|$ that contain at least one vertex. (Every path component of $|K|$ contains at least one vertex: given any point $x \in |K|$, it lies in some simplex $\sigma$, and $x$ is path-connected in $|K|$ to any vertex of $\sigma$ via a straight-line segment.) Hence $d$ is exactly the number of path components of $|K|$.
Choose a representative vertex $v_i \in V_K$ for each path component, $i = 1, \ldots, d$. Consider the homomorphism
\begin{align*}
\varphi : \mathbb{Z}^d &\to H_0(K) \\
(n_1, \ldots, n_d) &\mapsto \Big[\sum_{i=1}^d n_i \, v_i\Big].
\end{align*}
We show $\varphi$ is an isomorphism.
**Surjectivity.** Let $[u] \in H_0(K)$ be represented by $u = \sum_v m_v v \in C_0(K)$. Each vertex $v$ lies in some path component, say the $i(v)$th, so $[v] = [v_{i(v)}]$ by the equivalence just established. Therefore
\begin{align*}
[u] = \sum_v m_v [v] = \sum_v m_v [v_{i(v)}] = \Big[\sum_{i=1}^d \Big(\sum_{v : i(v) = i} m_v\Big) v_i\Big] = \varphi\Big(\sum_{v : i(v)=1} m_v, \ldots, \sum_{v : i(v) = d} m_v\Big),
\end{align*}
exhibiting $[u]$ as a value of $\varphi$.
**Injectivity.** Suppose $\varphi(n_1, \ldots, n_d) = 0$, i.e. $\sum_i n_i v_i \in \operatorname{im} d_1$. We must show $n_i = 0$ for each $i$. Define a group homomorphism
\begin{align*}
\pi_0 : C_0(K) &\to \mathbb{Z}^d \\
v &\mapsto e_{i(v)},
\end{align*}
where $e_j \in \mathbb{Z}^d$ is the $j$th standard basis vector and $i(v) \in \{1, \ldots, d\}$ is the index of the path component containing $v$. For any oriented edge $e = \langle a, b\rangle \in E_K$, both $a$ and $b$ lie in the same path component of $|K|$ (because the edge itself is a path joining them), so $i(a) = i(b)$, and hence $\pi_0(d_1 e) = \pi_0(b - a) = e_{i(b)} - e_{i(a)} = 0$. Extending linearly, $\pi_0$ vanishes on $\operatorname{im} d_1$.
Applying $\pi_0$ to $\sum_i n_i v_i \in \operatorname{im} d_1$ gives $\sum_i n_i e_i = 0$ in $\mathbb{Z}^d$, so $n_i = 0$ for each $i$.
Thus $\varphi$ is an isomorphism, and $H_0(K) \cong \mathbb{Z}^d$ where $d$ is the number of path components of $|K|$.
[/step]