Yes, circuits are not procedural. They are also reciprocal, for the most part, which may seem very strange coming from a procedural background.

That is, suppose you had a function, which takes a parameter, which becomes modified by the function. Well, that'd be a function on a pass-by-reference parameter, which is pretty normal. But, consider if the function is executed not once, but continuously until its input parameter stops changing (reaches equilibrium). And the function's return value also is similarly affected by what it's connected to. That'd be a strange (and presumably, inefficient) language!

But at least it's not inefficient, because it just happens naturally, it's physics. The challenge is to get your mind to see that simplicity.

Perhaps going through the math connection will be more helpful? Study solutions of simultaneous equations, if you aren't up on it; see how they are evaluated computationally. Consider only simple linear functions: numbers come in, addition and multiplication is performed, then a number goes out; and how they evaluate when connected in a loop with other simple functions, and how you would optimize that process (hint: it comes down to matrix inversion).

Then connect that system to physical circuits. Every element of the matrix represents an element of the circuit, a resistor or whatever; the matrix is always symmetrical, because of reciprocity (every element draws current from one node and delivers the exact same current to another node); Kirchoff's laws. This works identically at AC (with capacitors and inductors), but you use complex rather than real numbers in the matrix and solution.

Or maybe you're not big on numerical analysis. Maybe you'd be more comfortable from a graph-theoretic angle? A circuit is a graph; mostly it's an undirected graph (current can flow either way between nodes; of course, once you've solved it, you know exactly which way it's going!). Though if you add nonlinear components (diodes, transistors..), you get clear directions to start with. The nodes are labeled with voltages, and the edges with currents. This again gives rise to a matrix form, which is easily solved with traditional linear algebra.

If you've done much with graphs and matrices, the duality of matrices and graphs should be natural. Or with abstract data structures, where you might use an array, or array of arrays (a matrix), to store a graph. Or an array of allocated objects is used to store a multiply-linked list -- a sparse matrix, which is actually very practical in electronics simulators, because circuit matrices are usually on the sparse side.

Graphs are nice to match patterns visually. If you wish to find the solution by hand, you start by picking out recognizable features, and working them separately -- anywhere you see a node with only two edges, those edges are in series, and the node can be optimized out. Or anywhere two nodes share multiple edges, those edges can be combined into a parallel equivalent. There are also series-parallel, wye-delta and other transformations, involving different characteristic arrangements of edges and nodes.

So, regarding the circuits in question -- you are correct that they are not equivalent. In terminology that, uh, won't really help you much right now -- the first one has a two-pole filter (assuming the pin connects to a resistive signal source -- this is another theoretical staple, the Thevenin equivalent), while the second one simply has two capacitors in parallel, so their values add, and the equivalent circuit has only one pole. In both cases, the three resistors in series (R2-R4, R6-R8) can be reduced to a single 3k resistor. (See how MarkF has performed these simplifications!)

Tim