A breadth-first overview of computer science, i.e., the study of algorithms, including their formal and mathematical properties, hardware realizations, linguistic realizations and applications. Offered on demand. C SC 150 or permission of instructor. 5 hrs Lecture and Laboratory Data structures and system software. Abstract data types are introduced along with stacks, queues, trees, and graphs.
Complexity is introduced through sorting and searching algorithms.
5 hrs Lecture and Laboratory Levels of abstraction in computer architecture and programming languages. Example problems taken from database management and artificial intelligence serve to introduce these two topics. Computer architecture is discussed at the digital logic and digital systems levels. The topics of virtual machines, sequence control, data control, and type checking can be introduced and compared across programming paradigms. Lecture and Laboratory Algorithm complexity and computability and concurrent processing.