CSCI 051J: Introduction to Computer Science in Java  

Lectures MWF 10:00-10:50am in Edmunds 114
Labs Lab01/02: R 1:15-4:00pm in Edmunds 219 and 229
Instructors Yuqing Melanie Wu
Mark Kampe


Computer Science 051J is an introduction to algorithm development emphasizing object-oriented design. Algorithms will be implemented as programs in the Java programming language. We will introduce data structures and recursion as tools to construct correct, understandable, and efficient algorithms. These topics will be developed further in CSCI 054, CSCI 062, and more advanced computer science courses.

By the end of this course you should have a good basic understanding of how to develop (design, code, and debug) medium-sized programs in Java, and have a basic understanding of how one might analyze programs for correctness and efficiency.

This course is a prerequisite for all upper level Computer Science courses. In this course we do not assume that you have had any previous computer programming experience. If you have had extensive previous experience you should take CSCI 054 instead. Please discuss this with any member of the department's faculty if you feel you fall into this category. The required textbook for the class is the Java: An eventful approach, by Kim Bruce, Andrea Danyluk, and Tom Murtagh.

All course materials, including syllabus, lecture notes, slides, HW assignments, lab assignments and resources, will be availble via piazza.