Re: Is it essential to learn data structures before automata theory?



In article <laFEg.7372$Ji1.3582@trnddc05>, sillybanter@xxxxxxxxx wrote:

Student Body <studentbody@xxxxxxxxx> wrote:

Is it essential to learn data structures before automata and formal
language theory, or is some mathematical maturity enough? If so, why?

Is it essential, no. You can certainly learn automata and formal
languages with just a good math (particularly discrete math)
background.

A different but related question would be "does data structures make
sense as a prerequisite in a C.S. curriculum?" I'd say the answer to
that is "yes". In our curriculum, we use data structures as a
prerequisite for almost all advanced (junior/senior level) courses.
Why? Because that's how we guarantee that students have a significant
amount of experience writing programs and thinking about algorithms
and that sort of thing. Having that experience (and not necessarily
the specific topics in data structures), it's much easier to see how
automata theory relates to real-world problems in parsing and
programming.

I agree that some "programming maturity" as well as mathematical
maturity is useful for studying automata theory. But it may be that the
OP already has it through other routes, and thus wouldn't need to take a
data structures class; and indeed, in the OP's institution it may be
that the "programming lab" aspects that your institution folds into the
data structures class is located somewhere else (such as an explicit
programming lab class).

So yes, you can learn the theory and the math without data
structures. However, if your end goal is a well-rounded
C.S. education where you can see clearly how the pieces fit together,
then there's really no substitute for having lots of concrete
experience before hitting the more abstract topics.
.



Relevant Pages

  • Re: Is it essential to learn data structures before automata theory?
    ... You can certainly learn automata and formal ... A different but related question would be "does data structures make ... I agree that some "programming maturity" as well as mathematical ...
    (comp.theory)
  • Re: Domain Modeling Refutation Authorities
    ... Adaptive programming and the Demether Method research project ... problems with vague assumptions about data structures. ... principles like Liskov Substitution Principle. ... it is domain-modelling of a situation, ...
    (comp.object)
  • Re: Factor
    ... emphasis on idiomatic programming is the greatest challenge. ... it sure is nice when a language gives you a rich and ... flexible set of data structures and algorithms that are designed so ... There is no reason to believe that my implementation of lists is ...
    (comp.lang.forth)
  • Re: dangers of operator overloading
    ... Understanding data structures and algorithms is what ... true of a lot more domains than programming. ... Disagree about what you would call "high-level"? ... and languages like Ruby or ML or APL ...
    (comp.programming)
  • Re: Is it essential to learn data structures before automata theory?
    ... Student Body wrote: ... language theory, or is some mathematical maturity enough? ... You can certainly learn automata and formal ... A different but related question would be "does data structures make ...
    (comp.theory)