CSCI 240 Knowledge Repository

Course Description

This course introduces advanced Computer Science topics, focusing on C++ and Java. Topics include Object-Oriented Programming, pointers, memory management, file I/O, Heap vs Stack, deep and shallow copy, and data structures. Java topics cover OOP, inheritance vs composition, abstraction, interfaces, polymorphism, GUI, and App development.

Instructor: Yuni Xia (yuxia@iu.edu)

Office Hours: Tuesday and Thursday, 1:00 - 2:30pm, IT323

Lab Sessions: View Lab Sessions

Textbooks: Essential C, C++ Programming, Introduction to Java, Data Structures and Algorithms in Python

Grading Policy: Assignments 30%, Final Project 20%, Midterm 20%, Final Exam 20%, Attendance 10%

Class Schedule and Topics - Fall 2023

Course Materials and Communications

All class information, including lecture notes, videos, and assignments, will be available on Canvas.

Homework and Exams

Assignments are due on the indicated dates. No late submissions accepted. Exams will be announced in class, with no make-up exams provided.

Welcome to the CSCI 240 Knowledge Repository. Explore visualizations of data structures and algorithms or browse through our notes.