《数据结构》课程介绍
数据结构是计算机专业最重要的专业技术基础课程和核心课程之一,是学生进一步深入学习和开展高层次研究的学科基础必修课。计算机学院的数据结构课程不仅是吉林大学的名牌课程,而且在国内同行中产生了很大影响,享有较高知名度。数据结构课程被评为2003年度首批国家级精品课程。
数据结构课程内容具有如下特点:采用(ADL和C++)两种语言描述算法;算法与数据结构紧密结合;强调“数学严格”,对书中典型算法都给出了时间复杂性分析,对与某些算法正确性相关的一些问题给出了证明,并注重分析与证明的严格性;突出启发式教学与因材施教内容的设计与撰写;对科研成果转化为教学内容进行了探索;增加了与重要知识点相关的背景、历史和参考文献。
数据结构课程包括72学时的理论课、32学时的上机实验课和36学时的课程设计。其中,理论课向学生讲授数据结构的主要知识点,使学生掌握数据对象的特性、对所处理的数据对象选择、构造合适数据结构和存储结构的能力,进而掌握对这些数据进行操作的技术(各种算法);同时培养学生利用算法语言和面向对象程序设计语言编写结构清晰、正确易读、高效的算法和程序的技巧和能力,以及对算法进行时空复杂性分析和算法正确性证明的基本方法。上机实验重点培养学生设计算法、编制和调试程序的动手能力,课程设计着重培养学生综合运用所学数据结构知识的能力。
数据结构课程系统介绍了数据结构的概念、原理与技术,主要内容包括:绪论,基本数据结构,排序、查找与内存管理,相关工具和文件。
数据结构课程内容的组织结构如下:第一章绪论主要介绍数据结构与算法的基本概念,算法描述语言与书写规范,算法正确性证明与算法分析基础;第二至第五章是基本数据结构部分,主要涉及线性表、堆栈与队列,数组和字符串,树与二叉树,图结构等内容;第七至第九章,从算法的视角讨论了排序、查找和内存管理等方面的内容,给出了若干典型算法的描述,时间复杂性分析和相关算法的比较等;第六和第十一章分别对递归和随机数两种主要工具进行了讲解;文件,一种复杂数据结构,在第十章中被阐明。
The introduction of course ---Data Structures
Data structure is one of the most important fundamental courses for specialty of computer science and technology, it is essential for students to learn further and make academic research. The data structure course of College of Computer Science and Technology in Jilin University is not only a brand course, but also has significant impact on the domestic counterparts, and it has high reputation. This course was selected as the first batch of National Excellent Courses.
Data structure curriculum has the following features: using two languages (ADL and C++) to describe the algorithm; algorithms and data structures are tightly coupled; the typical algorithms are presented time complexity analysis, and the proof of the correctness for some issues about algorithms; exploring to introduce scientific research into teaching content; increased with the relevant background, history and references to important knowledge.
Data structures course includes 72 class hours for theory, 32 class hours for the experiment, and 36 class hours for curriculum design. The theory courses presents the main knowledge of the data structure; while training students to use algorithmic language and object-oriented programming language to develop clear, correct, easy to read, efficient algorithms and programs, as well as make analysis of space-time complexity for the algorithm and correctness proof for the algorithm. Experimental courses focus on training students to design algorithms, compile and debug the programs, curriculum design course emphasizes Comprehensive usage of of the data structure.
The course of data structure presents concepts, principles and techniques of data structure, the main contents include: Introduction, basic data structure, sorting, searching and memory management, related tools and files.
The course is organized as follows: The first chapter introduces the basic concepts of data structures and algorithms, algorithm description language and writing specifications, algorithm analysis and correctness proof; Chapter 2 to 5 are basic data structures, such as linear tables, stacks and queues, arrays and strings, trees and binary tree, graph structure, etc.; Chapter 7 to 9 discuss sorting algorithms, search and memory management and other aspects from the perspective of algorithm, present several typical algorithm, time complexity analysis and comparison of related algorithms; Chapter 6 and 11 present recursion and random number; Chapter 10 introduces a complex data structure: file.