1. Not finding help here? Sign up for a free 30min tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Data Structures and Algorithm Analysis

  1. Jan 24, 2008 #1
    Has anyone here taken this class before? I've been in this class for two weeks, and I still can't get a feel for how difficult or time consuming it may be. My instructor keeps mentioning discrete mathematics (which I haven't taken), although it wasn't a prerequisite for the course. Additionally, I've only had one semester of programming. Does anybody have any insight as to what I can expect from this course? How important is it to have a background in discrete mathematics?
  2. jcsd
  3. Jan 24, 2008 #2
    I'm currently in a class similar to that, named Data structures and Algorithms and YOU MUST have Discrete math. I don't see how it isn't a pre-requisite.

    You are going to have to prove a lot of things using strong induction and that is what you learn in discrete math.

    You don't really have to know much programming, its mainly about analysis of things, but you should understand basic concepts like recursion and how to write psuedeo code.

    I heard this is one of the most difficult computer science courses at my university anyways. Averages around 40-50% on exams which is higher than my discrete math course, the class average for my discrete math class was 25-30%, it was horrible. It was mainly the professors fault, people who didn't have that professor did much better the previous semester.
    Last edited: Jan 24, 2008
  4. Jan 24, 2008 #3
    Yikes. Well I'll double check the prerequisites. It would be somewhat of a relief to know that I'm not following the material for a good reason. Thanks for the reply.
  5. Jan 24, 2008 #4
    Yah it sounds like your def. not ready for that class.
    Its a 400 level class at my university, you take this as an entry point to all your other core courses like Operating Systems, programming languages, Graphics, AI, etc. Even though I'm taking AI concurrently with Data & Algorithms.

    You should have at least went though intro and intermediate programming, and discrete math before that class.

    Hell I took all those classes and I still am currently lost in that class, its more like a math class than anything else blah!
  6. Jan 24, 2008 #5
    Yeah I hear ya. About 90% lectures have been about mathematics, and the rest is simply psuedeo code (as you mentioned). It's a 200 level course at my university, but I feel like the only one in the class not getting the material, which is always an uncomfortable feeling. I didn't take any intermediate programming however, just one course in Java, and that's it. It'd probably be better to hold off on the class until I get some more experience under my belt. Right now that seems better than sweating the material for the entire semester! I appreciate the insight :)
  7. Jan 24, 2008 #6
    I'm taking it now and I haven't taken discrete mathematics. It's time consuming, but not too hard.
  8. Jan 24, 2008 #7
    don't worry too much about discrete maths - i had a great book for it that steps you through proofs and what was amazing was - for every single problem in the book - there was an accompanying solution - IN THE BOOK!

    lemme look through amazon and i'll give you the full name. Its a tiny book with a running mans outline - the titles lsomething like proofs explained or along those lines. Lemme look for it and i'll edit the post.

    Also check out a schaums outlines book for it as well.

    Don't be afraid of discrete maths - i'm not that stellar at math and I loved the course.
  9. Jan 24, 2008 #8
    If your scheduled to take that class you should take it.

    If you are signed up for a 400 level data structures class like mine is, then I would recommend against it.

    But like fizziks says, he's taking it without having taken discrete math. Some universities have it at 200 level or 300 level so it doesn't require as much knowledge.

    Talk to your professor before you do anything drastic so he knows where your at and you can find out as well.
  10. Jan 24, 2008 #9
    @ Ian Brooks

    I'd appreciate that title, I'm not sure if I'm going to have to reschedule this class or not though.

    @ mr_coffee

    I e-mailed my professor just a little bit ago. We'll see what comes of it. I appreciate the input from everyone :)
    Last edited: Jan 24, 2008
  11. Jan 30, 2008 #10
    So I decided to stay in my Data Structures class, but it's still pretty complicated. I've done the required reading from my textbook, and let me say, my textbook is extremely disappointing. Each chapter discusses concept after concept like a run-on sentence, and to make it worse, all of the practice examples are grouped together at the end of the chapter. And even worse, there are no answers to ANY of the examples in the book, making it impossible to practice any concept! All of the textbooks that I own have SOME selected answers to examples. It's rather frustrating. So I set out in search for a supplemental text, and I came across Schaum's Outline of Data Structures with Java, Second Edition. I looked for this text as an ebook, as I don't really have immediate access to local book stores, and our school library does not carry it. I thought I found it as an ebook twice, and the download took me to porn each time :grumpy: So, I was wondering if anyone knows how to find this text, or a similar text in the form of an ebook. Any help would be greatly appreciated.
  12. Jan 30, 2008 #11
    Sorry for getting back to you so late,

    I found out that the book is by our university press - its by one of our professors - so let me look for a better / similar book at our library when I head back from work.

    I read a couple of the above posts and saw all this 200/400 lvl courses - didn't make much sense

    Discrete math is a first year - first semester course in Australia, Data structures is done in 2nd year - Compulsory for Computer Engineering and COmputer Science, optional for EE's.

    I wouldn't worry so much - try doing some reading in other books on the material that you find challegning and you should be fine. If you have problems try posting it up here or ask your professor, thats what you're paying him for.
  13. Jan 31, 2008 #12
    @hotcommodity: Try CLR, it's one of the best books on data structures and algorithms. You can say it's a classic in every computer science program. The name CLR comes from the authors Cormen, Leiserson, Rivest and Stein (Stein didn't co-write the first edition so that's why people say CLR instead of CLRS). The complete title is "Introduction to Algorithms". It's really good, I can assure you.
    Hope it helps.
  14. Jan 31, 2008 #13
    Thanks, I appreciate the feedback :)
  15. Jan 3, 2011 #14
    I'm a 4th year cs major at one of the calstates. I recently took a 300 level class called data structures and algorithms. This class I would have to say was one of my top 5 toughest classes, automata theory ranking about the same. All I can tell you man is just try to do what you can do. Everyone constantly failed all the tests this professor gave. I failed my 1st midterm, passed the 2nd midterm, and failed my final and still ended up getting a B- in the class. So imagine. lol. Just understand the strong concepts of this class for future purposes, such as Big-O notation, recurrence relations, and loop invariants. OMG loop invariants were a *****. Discrete math for me was a piece of pie, but this class needed time and effort. There were nerds in my class who did worse than me on the test, and I'm a pretty good looking guy. You catch my drift? At the end always remember, if I had the choice of giving up or failing, I would fail. At least I know I did something and my confidence doesn't get shattered.
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?

Similar Discussions: Data Structures and Algorithm Analysis
  1. Discrete Structures (Replies: 0)