Update
Another use for SubstitutionSystem
, which I was unaware of before I read this great answer by @azerbajdzan.
SubstitutionSystem[{n_-> n-1}, {4,2},2]//Flatten
(* {4,2,3,1,2,0} *)
Or
SubstitutionSystem[{n_-> n+1}, {0,2},2]//Flatten//Reverse
(* {4,2,3,1,2,0} *)
(SubstitutionSystem[{n_->n+1}, {0,2},#]//Flatten//Reverse)&/@Range[2,10]
(* {
{4,2,3,1,2,0},
{5,3,4,2,3,1,2,0},
{6,4,5,3,4,2,3,1,2,0},
{7,5,6,4,5,3,4,2,3,1,2,0},
{8,6,7,5,6,4,5,3,4,2,3,1,2,0},
{9,7,8,6,7,5,6,4,5,3,4,2,3,1,2,0},
{10,8,9,7,8,6,7,5,6,4,5,3,4,2,3,1,2,0},
{11,9,10,8,9,7,8,6,7,5,6,4,5,3,4,2,3,1,2,0},
{12,10,11,9,10,8,9,7,8,6,7,5,6,4,5,3,4,2,3,1,2,0}
} *)
Original Answer
(1)