CourseCode045100162
CourseTitleDataStructures
CourseCategoryDisciplinaryBasic Course
CourseNatureCompulsoryCourse
ClassHoursTotal:64 Lab:16 Other (MOOC): 8
Credits3.5
Semester3rdsemester
InstituteSchoolof Computer Science and Engineering
ProgramOrientedComputerScience and Technology, Network Engineering, Information Security
TeachingLanguageChinese-EnglishBilingual Teaching
PrerequisitesC++Programming
StudentOutcomes (Special Training Ability)№2.ProblemAnalysis: An ability to identify, formulate and analyze complexengineering problems, reaching to substantiated conclusions usingbasic principles of mathematics, science, and engineering.
№3.Design/ Development Solutions: An ability to design solutions forcomplex engineering problems and innovatively design systems,components or process that meet specific needs with societal,public health, safety, legal, cultural and environmentalconsiderations.
TeachingObjectivesAfterthe course, the students will enhance their ability in thefollowing aspects:
1.Students will understand the basic data structures includinglists, binary trees, general trees, and graphs, and master thetime and spatial complexity analysis techniques of algorithms.
2.Students can use the data structure knowledge flexibly for theengineering problems in real world, and do comparison amongdifferent data structures.
3.Students can design the data structures and algorithms to addressthe specific demands from complex computer engineering problemscreatively, and have the ability of problem analysis, modeling andimplementation of complex computer systems.
CourseDescriptionDataStructure is a very important disciplinary basic course ofcomputer science. The main topics of this course include logicalstructures, storage structures, algorithm design and algorithmevaluation. The course may help students to understand the basicdata structures including list, stack, queue, tree and graph, andsome basic algorithms such as searching and sorting. Moreover, thestudents are trained to grasp the algorithm design techniquesrelated to different data structures in specific engineeringproblems. In a word, DataStructureis a coursecovering a lot of theoretical and practical topics simultaneously.
Instrumentsand EquipmentsDesktopComputer for each student
C++environment
AMCOJ Platform
ExperimentReportExperimentreport is not necessary. The online judgment is available.
AssessmentParticipationand MOOC exercises: 10%
Labassignment: 20%
Finaloperating examination: 10%
Finalexam: 60%
TeachingMaterials and Reference Books[1]Clifford A. Shaffer, “A Practical Introduction to DataStructures and Algorithm Analysis (2nd edition)”, PublishingHouse of Electronics Industry (Chinese Publisher), 2009
[2]Adam Drozdek, “Data Structures and Algorithms in C++ (2ndedition)”, Brooks/Cole, 2001
[3]Nell Dale, “C++ Data Structures (3rd edition)”, Jones andBartlett Publishers, Inc, 2003
[4]严蔚敏,吴伟民,数据结构(C语言版),清华大学出版社,2003年7月再版;
[5]肖南峰,赵洁,数据结构与算法设计,电子工业出版社,2006年12月出版;
[6]傅清祥,王晓东,算法与数据结构,电子工业出版社,2001;
[7]吴文虎,王建德,实用算法的分析与程序设计,电子工业出版社,1998;
[8]William F.,WilliamT.,DataStructures with C++,PrenticeHall,Inc.,1996;
Preparedby Whom and WhenJianmingLv 15/4/2019