nodal analysis
Nodal analysis is a systematic, almost mechanical recipe for solving any resistive circuit, no clever insight required. Where series-parallel reduction can get stuck on awkward topologies, nodal analysis grinds steadily to the answer every time. The core idea is to stop tracking individual currents in your head and instead solve for the voltage at each junction, because once you know every node voltage, Ohm's law gives you every branch current instantly.
The procedure is short. First, choose one node as the reference, called ground, and declare it 0 V. Then label the unknown voltage at every other node. At each unknown node, write Kirchhoff's current law, expressing each branch current as a node-voltage difference divided by its resistance. That gives you one equation per unknown node, and you solve the set together. For a single unknown node V fed from 9 V through R1 and tied to ground through R2, KCL reads (V - 9)/R1 + V/R2 = 0, which you solve for V.
Nodal analysis scales gracefully to circuits of any size and is exactly the method that SPICE and other simulators use internally, which is why it is worth learning by hand first. It shines when a circuit has many branches meeting at a few nodes. The one thing to remember is that every node voltage is measured relative to the reference you chose, so picking a sensible ground, often the most-connected node, keeps the algebra clean.
A node V connects to 9 V through 10 kohm and to ground through 5 kohm. KCL: (V - 9)/10000 + V/5000 = 0. Multiply through and solve: V = 3 V, matching what the voltage divider predicts.
One KCL equation per unknown node turns any resistive circuit into routine algebra.
Nodal analysis needs a chosen reference node (ground); every node voltage is relative to it. Choosing the most-connected node as ground usually keeps the equations simplest.