Overview Algorithms Baojian Hua
Who we are? Professor: Naijie Gu TA: Baojian Hua 0512 — , information science building Office hour: at every seminar, or else send me to appoint
Course Info ’ Home page Course info ’ Homework requirement Discussion group … So check that page frequently
Books Required: Introduction to Algorithms (Second Edition) Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein. MIT Press Check the on-line errata list Recommended: Algorithms in C/C++/Java. Robert Sedgewick. Addison-Wesley
Homework There will be a lot of homework every class Solve them independently Two copies of solutions are available on the course page, use them wisely Hand in only the coding problems Write others on your own paper, but do NOT hand in them
Homework (cont ’ ) Hand in you homework On paper Electronic version Send via Only.PDF version will be accepted Real code (the best way) Write clearly what language you use, what compiler to compile and what platform to run Your code must run correctly. I ’ ll NOT debug it
Homework (cont ’ ) If you hand in electronic version of your homework, please: Send me by (I ’ ll try to respond in time) Write “ 算法作业:学号 ” in the title Write your name and student-number on the paper or in the comments of the code clearly
Seminar The seminar: Discuss any topic: Discrete math, data structure, algorithm design and analysis, programming languages, etc. Focus on algorithms (and/or data structures) topics, especially the implementation issues Implementation-oriented
Implementation The course is primarily theoretical Pseudocode & Math analysis But, in my opinion, implementation is also important, if not more Make you understand algorithms better Make you familiarize with programming tools Make you be experienced (and joyful) Make you more competitive on the job market
Implementation (cont ’ ) Language choice: Textbook uses Pascal In previous semesters, I used C or Java This year, I ’ ll use functional programming paradigm And use OCaml as the running language This is an experiment, so it may crash or even burn Owe it to you to be on cutting edge
Test and Evaluation The final test: Close book Problems not very hard, but cover all materials in the book Evaluation: 30% homework + 70% test
Tasks Read ch. 10 Pick up a C, Java or OCaml textbook, if you aren ’ t familiar with them Join the discussion group: