CSCE 221 Professor Lupoli TAMU CSCE 221 Intro
Course Website Instructor site: on BlackBoard Central portal: Instructors office hours (Instructor site) TA names and office hours (Instructor Site) TAs grade projects Syllabus (Central site) Class schedule including project, homework and exam dates (Instructor Site) Grading (Central site) Lecture slides (Central/Instructor site) Projects (Central site) TAMU CSCE 221 Intro
Cheating Sadly, many students are caught each semester Usually it’s one person trying to honestly help another But gives code other person just takes the code Catastrophic to your grade Will be placed in the Academic Integrity Database TAMU CSCE 221 Intro
Textbook Data Structures and Algorithms, 2nd Edition Goodrich, Mount & Tamassia ISBN-13: 978-0-470-46044-3 Publisher: Wiley Copyright: 2011 TAMU CSCE 221 Intro
Lecture/Active Learning style Example oriented Example code using eclipse Example of utility of data structures Discussion oriented Most lectures would have some problem solving exercise Feel free to chime in if you have questions. Will have some group coding exercises TAMU CSCE 221 Intro
Grade distribution Let’s take a look at the syllabus TAMU CSCE 221 Intro
Projects and Grace Days Projects are allowed to be late Up to 3 days (72 hours) MAX Then just a 0 You are allowed to use 3 Grace Days Can be spent any where you want Grace Days are applied automatically Extra Grace Days are just wasted TAMU CSCE 221 Intro
Topics to be covered Linear data structure: list, stacks, queues Trees (BST, RB trees, B-Trees, priority queue) Hashing Graphs, disjoint sets TAMU CSCE 221 Intro
Data Structure What is a “data structure”? How are they implemented? TAMU CSCE 221 Intro
Abstract Data Type What is an ADT? TAMU CSCE 221 Intro
Why do we need Data structures Efficiency of almost any application is a function of the use of appropriate and efficient data structures Search engines Operating systems Social networking portals TAMU CSCE 221 Intro
Why C++ over Java? C++ remains a popular language in industry C++ is more suitable for 400-level courses such as OS and Graphics No one vendor “owns” C++ Java includes many of the data structures featured in this course. So does C++, as part of the Standard Template Library (STL) Java is more Platform Independent, but C++ is faster APIs for both languages are extensive TAMU CSCE 221 Intro
Course Tools -- Eclipse If you wish to develop your project on your laptop or PC, we recommend the use of the Eclipse IDE. The current version of Eclipse is called “2018-19”. The download can be found here. Check out the course course resource page for help with Eclipse. TAMU CSCE 221 Intro
Course Tools – Visual Studio Less buggy Not as many nice features Free through DreamSpark I do have videos by request TAMU CSCE 221 Intro
Course Tools - Submissions Projects 0 – 5 Similar to submit Covered in detail in Project 1 You may use any IDE to develop your programs to be submitted for credit HOWEVER, the program needs to be able to run on the Unix server in order to get credit If it runs on your laptop, but not on Unix, it doesn’t run, and it won’t count TAMU CSCE 221 Intro
Course Tools - Make Make (makefile) is a Linux based tool for automating the build (compile, test) process Text based format Covered in CSCE 110/111 TAMU CSCE 221 Intro