Upload
others
View
9
Download
0
Embed Size (px)
Citation preview
Marco AlvarezDepartment of Computer Science and Statistics
University of Rhode Island
CSC 212: Data Structures and AbstractionsIntroduction
Spring 2019
Welcome !‣ Lectures
✓ TR 3:30 - 4:45p @ Coastal Institute Auditorium
‣ Labs✓ W 10 - 11:45a @ Library 166✓ W 12 - 1:45p @ Library 166
‣ Discussion Sections✓ M 5p - 6p @ TBA✓ T 5p - 6p @ TBA
‣ Office Hours✓ TBA
!2
CSC 212?‣ Review of basic principles of analysis of algorithms
‣ Introduction to fundamental data structures and their algorithms✓ arrays, lists, stacks, queues, trees, hash tables, graphs
‣ Survey of classic algorithms for sorting and searching
‣ Introduction to C/C++ and programming tools
!3
CSC 212 is NOT about learning a programming language
Recommended Textbooks
!4
☝
C++?
!5
Recommended Tools✓ although you are free to use any IDE on any platform, we will grade all assignments using g++ on a Linux machine
✓ CS50 IDE is strongly recommended !✓ alternatives:
✓ vim, g++, gdb (running on Linux)✓ VSCode
Learning C/C++‣ Read a book
‣ Enroll in a MOOC (massive open online course)
‣ Solve Challenges
!6
Kattis
Grading (subject to change)‣ Pre-Assesment
✓ Exam (first day of classes)✓ Students below certain threshold will be redirected to a micro-tutoring
program
‣ Assignments✓ ~6 programming assignments (25%)✓ ~10 weekly problem sets (5%)✓ lab attendance (5%)
‣ Exams✓ 2 midterm exams (35%)✓ 1 final exam (30%)
!7
All exams are based on lecture materials and problem sets
Programming Assignments‣ Discussions and collaboration are allowed, however you must write your own code
‣ All assignments are to be turned in on Gradescope by the due date✓ late submissions are NOT accepted
!8
Plagiarism?✓ just don’t do it✓ if you get caught (chances are very high), your name(s) will be immediately reported for further sanctions
What is expected from you?‣ I do not spend time taking attendance … but …
✓ students skipping lectures will (very) likely fail this class
‣ Organize your time✓ lectures, labs, problem sets/discussion sections, programming
assignments, exams
‣ Participate and think critically✓ ask questions (lectures, labs, discussion sections, office hours,
Piazza, …)
‣ Start assignments early✓ avoid copying/pasting or google’ing answers
!9
Need help?‣ Post questions on Piazza
✓ answer questions, share information
‣ Contact your TAs
‣ Come to Office Hours
!10
Setup
!11
Warming up‣ Adjacent elements sum
✓ find the maximum sum of any pair of adjacent elements in an array of integers
‣ Almost increasing sequence✓ indicate whether a sequence of integers can be made
strictly increasing by removing at most a single element
!12