Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Course #: C243 Course Title: Introduction to Data Structures Prerequisites: C151, C201 Credits: 4 Text Book: Data Structures and Problem Solving Using C++, by Mark Weiss, 2nd edition Supplemental Texts: Class notes Course Information: The course assumes thorough mastery of the advanced parts of C++ programming up through template classes and inheritance. Students will be introduced to the standard abstract data types of professional computing. Students will also learn to use the UNIX operating system and the Emacs editor. About ten programming assignments allow students to practice their programming skills, especially using pointers. Other Information: 1. UNIX; Emacs. 2. Abstract data types (ADTs). 3. Stacks (LIFO structures) and their applications; implementations. 4. Queues (FIFO structures) and their applications; implementations. 5. Performance issues; analysis of algorithms; big-oh notation. 6. Tables (associative container classes); implementations. 7. Binary trees; recursion. 8. Binary search trees; AVL trees; splay trees. 9. Hash tables. 10. Priority queues; binary heaps. 11. Collection of disjoint sets; union/find operations. 12. Sorting concepts; in-place sorts; stable sorts; internal sorts 13. Selection sorts: Straight Selection and Heap Sort 14. Exchange sorts: Bubble Sort and Quicksort 15. Insertion sorts: Linear Insertion Sort, Binary Insertion Sort 16. Merge Sort; Bucket Sort 17. Sorting linked lists 18. External sorting; replacement selection algorithm 19. Polyphase merges 20. B-trees 21. Data compression 22. The UNIX make facility 23. The Standard Template Library