In general, an "AST" doesn't contain "the actual code sequence" no matter how you rearrange it. That is why it is called "abstract": detail has been dropped. It contains enough information to represent essentially what the program text said.
A concrete syntax tree arguably contains enough information to regenerate the source; it takes effort to store enough to regenerate the original program, especially if you want literal formatting information such as number radix and number of trailing zeros after a fraction.
Whether the information is stored for access in-order, pre-order or post-order or different for every node is a matter of implementation. (Most AST and CST trees tend to match the program text order when traversed in-order).
[EDIT 7/3/2014 to answer question about "single tree vs. forest" as a result]
As a general rule, one expects a single source file to be parsed to a single AST. However, real programs have lots of interesting complications; for instance, #include statements in C reference another file (abstractly expanded in place), and package references in Java reference another file. So, if a single source file references many other source files, and the single source file is parsed, should one AST for the single source file be produced, with no ASTs for the other files?
The answer to this question depends on the nature of the tool you are building. C compilers will expand the #include in place, and parsing a C file tends to produce one AST. Java compilers do not expand package references in place, but may need to parse the package source file to understand what it contains; in this case, you tend to get one many ASTs, one for the "main" program, and one for each package it references, and one for each (unique) package they reference, etc. If your tool isn't compiling, but wants to modify the C source code, you probabaly don't want to expand the #include in place, and so such a tool would have one source file for the main C program, and one for each #include encountered. So depending on your purpose, your (complex) parser may produce just one AST, or a set (which is typically called a "forest").