The first step in writing a program is to design a data structure to be used. If we choose a data structure that can store and manage the information to be represented most effectively, the algorithm and the program structure will be simpler and stronger. Otherwise, if we choose a wrong data structure, the algorithm and the program structure will be so complicated that it leads to many errors and inextensibility. In this lecture, we learn the principles of data structures for efficient programming. First, we learn the basic concepts about efficiency of programming. And then, we learn a variety of data structures such as lists, arrays, matrices, stacks, queues, trees, and graphs, and the corresponding programs.
※ Class Homepage: http://idb.snu.ac.kr/lectures/2006-DataStructures/