唐突に見えるのは長文が読めないからだな

たとえばリスト中の一つのノードの後に新しいノードを挿入する関数insert_after(Node* node, Node* new_node)を作る場合
その関数の中に全てのロジックを書きたくなるけどそれをあえて次のように分割する

get_after //引数で指定されたノードの後のノードを取得
combine_after //一つのノードの後に別のノードを繋ぐ
combine_before //一つのノードの前に別のノードを繋ぐ

そうしたらinsert_afterはこうなる

bool insert_after(Node* node, Node* new_node) {
Node* after=get_after(node);
if (node==new_node||new_node==after) return false;
combine_after(node, new_node);
combine_before(new_node, node);
combine_after(new_node, after);
combine_before(after, new_node);
return true;
}