No announcement yet.

Help for A CS Student

  • Filter
  • Time
  • Show
Clear All
new posts

  • Help for A CS Student

    My son is in a computer science class in his high school. They program exclusively in Java. I only speak PowerBasic. Can anyone point us to a good tutorial resource on Linked lists, stacks and queues in Java? There is a caveat of sorts to this request. The teacher is insisting that they create and manipulate their structures without the built-in Java list commands, so ordinary reference books have not been much help. Any help will be much appreciated.

    Allen Hirsh

  • #2
    I'm not as good at Java as I want to be, but here are some links I have found helpful. The DreamInCode site is especially helpful. They won't do his homework for him, but they are very responsive to how-to questions.

    Do not go quiet into that good night,
    ... Rage, rage against the dark.


    • #3
      Not a site reference per se' but any good c (especially) and/or c++ tutorial should get him going. Heck even a pascal book on data structures or algorithms should work.

      Since it sounds like the prof is going after them learning what's under the hood it'll all be procedural (rather than oop based) to figure out *what* to do. Then translating into another language and oop should be fairly straight forward.
      John Strasser
      Phone: 480 - 273 - 8798


      • #4
        Since it sounds like the prof is going after them learning what's under the hood it'll all be procedural (rather than oop based) to figure out *what* to do.
        Bout' time a prof teach "Look under the hood....not just know how to change the oil"

        Looking back, all my CS classes were what I would consider M$ oop (or "oopsey") rather than "Here is what you are doing", and "Here is WHYyou are doing it" and "Here is HOW it works"

        Thankfully I was a geek in the ole days (and worse now), that I was taught COBOL, and C, and the basics of other languages, and the concept of "Thought"

        (if even just to myself, of wondering "Ok, I can do it....but WHY does it work?????)

        The one thing I have found over the years, is nomatter what the language, they are basically the same, its the syntax of the language that counts, and if you can understand the structure of what it is you are trying to do, then you could code the same example in as many languages as possible with the same results. (keeping in mind that it is not a "word-for-word" port of course, and accounting for how each language internally stores your values for your variables)

        Case in point....My brother-n-law is "all out" java, I am "all-out" PB....If we each have a problem and show code...he can explain how java handles it, or I can point out how PB handles it. (both are similar, but just different in the syntax of the code)
        Engineer's Motto: If it aint broke take it apart and fix it

        "If at 1st you don't succeed... call it version 1.0"

        "Half of Programming is coding"....."The other 90% is DEBUGGING"

        "Document my code????" .... "WHYYY??? do you think they call it CODE? "


        • #5
          This may not be the right book for your son, but I recommend the book Thinking in Java. First 7 chapters free downloadable PDF.

          If the instructor doesn't want the built in Java List commands used, build your own that implement the list command that is required.

          1. Write the code using the Java list commands first. When you have everything working as it should. i.e. the code is printing the correct result. Then
          2. Replace each Java list command one at a time with writing your own equivlent function. Since the code worked before, the only place you can introduce a problem is in the function your're writing.


          • #6
            One approach

            I have found, at least for me, that data structures and relationships should come first then program logic second. If the data structures are wrong it is generally harder to fix and can even create hidden problems or convoluted logic in an attempt to deal with the data.

            I don't have any specific suggestions for study material other than trying to find one that does not neglect data structures.
            Mark Strickland, CISSP, CEH