Advanced Programming 2009 Advanced Programming Advanced problem solving using the C language (Tongji University, Shanghai) Maurizio Morisio Dip. Automatica e Informatica Politecnico di Torino, Italy Maurizio.Morisio@polito.it Goals � Advanced C (dynamic memory) � Capability to know and choose among basic data structures and algorithms � Capability to implement in C basic data structures and algorithms Advanced Programming - Intro 2 1
Advanced Programming 2009 Outline � Dynamic memory allocation in C � Modularity in C � Sorting algorithms � Complexity Analysis � Problem Solving paradigms � Dynamic Sets � Lists, Binary Trees, Hash Tables � Graph Theory � Traversals, Shortest Paths 3 Requirements: Programming skills � C Syntax � Write, compile, debug small programs Advanced Programming - Intro 4 2
Advanced Programming 2009 Programming Tools � Codeblocks www.codeblocks.org � Eclipse CDT � http://www.eclipse.org/cdt/ � DevCpp � http://sourceforge.net/projects/dev-cpp/ � Other tools for Linux � Kate/Emacs with gcc and gdb ; Kdevelop � Other tools for Windows � Microsoft Developer Studio Advanced Programming - Intro 5 C Standards � K&R (1978) � C89 (ANSI X3, 159-1989) � C90 (ISO/IEC 9899:1990) � C99 (ANSI/ISO/IEC 9899: 1999, INCITS/ISO/IEC 9899: 1999) Advanced Programming - Intro 6 3
Advanced Programming 2009 Text books � Our Slides � C Reference language � Introduction to Algorithms (2nd Edition) � Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein � McGraw-Hill Book company Advanced Programming - Intro 7 Course Web site � http://softeng.polito.it/tongji/AP/ � News about the Course � Material � slides � exercises � tool, software Advanced Programming - Intro 8 4
Advanced Programming 2009 Exam � Writing a C Program � .. in 2 hours of time � Docs and manuals can be used 5
Recommend
More recommend