[Data Structures] Chapter 1 Overview

 Introduce the origin and development status of the subject.

 The status of disciplines in computer science: core courses, compulsory courses for majors.

The importance of data structure courses can be properly emphasized: postgraduate entrance examination, algorithm competition and job hunting

necessary knowledge.

Discuss the necessity of learning data structure: improve logical thinking ability and software development ability.

Give how to learn the course of data structure well, the recommended learning method and learning path.

 Emphasis: Use your brain, use your hands, use your mouth

   Use your brain to listen to lectures and think

  Hands-on programming practice

   Talking is to study hard and ask more questions, ask for advice and discuss more, and look up information on the Internet.

Learning method: listening to lectures -> programming -> brushing questions

Learning path: basic algorithm->linear structure->non-linear structure, grasp the main key points.  

Prerequisites in Data Structures : Mathematics, Programming, Introduction to Computers.

                                   Emphasize the language independence of the data structure, any programming linguistics data structure can be used.

A follow-up course on Data Structures : Algorithm Analysis and Design.

Note: The content of the course is outdated, and it is not combined with the cutting-edge of the times, which is the flaw of most data structure reference books now.

The new teaching materials should be understood and connected with reality, emphasizing the application in actual software development.

Knowledge maps and mind maps are added to the new textbooks to help understand and master knowledge points.

Chapter 1 Part 1: Basic Concepts

The basic concept of data structure: data, data item, data element, data object (the basic concept part should also be illustrated).

The two major knowledge modules of the data structure course : data structure and algorithm.

The relationship between data structure and algorithm: data structure is the basis of algorithm, and algorithm needs to use data structure.

Three elements of data structure : logical structure , physical structure, data operation.

There are two types of logical structures : linear structures and nonlinear structures. Briefly introduce the two structures, and list examples of various logical structures, as well as application scenarios, such as linear tables, stack application scenarios, tree structure application scenarios, and graph application scenarios. New textbooks must integrate theory with practice and be closely integrated with actual software development. Specific examples are given for each data structure and algorithm, allowing students to think about why this data structure should be used.

Storage structure : The four common structures are sequential storage, chain storage, index storage and hash storage.

In the data structure course, the main research is sequential storage and chain storage.

Data operations : The common ones are adding, deleting, modifying, checking, and sorting data. Data operations are often related to algorithms, such as inserting data in a linear table. This is a basic operation of a linear table and can correspond to an insertion algorithm.

Chapter 1 Part 2: Algorithms

First talk about the concept of algorithm, and then learn data structure (data structure starts from Chapter 2).

Need to explain: the teacher can talk about the ordering first, without the constraints and restrictions of the chapters.

1. The basic concept of algorithm: what is an algorithm? Is an algorithm equal to a program? What is the difference between it and a program?

2. The role of the algorithm: why design an algorithm?

3. How to describe the algorithm: text, graphics, code.

4. Basic characteristics of the algorithm: five basic characteristics.

5. Algorithm evaluation: what kind of algorithm is a good algorithm? What kind of algorithm is a bad algorithm?

6. Time complexity and space complexity.

   The main research time complexity.

   Note that the greater the time complexity, the slower the performance is (bad).

   The smaller the time complexity, the faster the speed and the better performance (the smaller the time complexity, the better).

  Understand and master big O notation.

Guess you like

Origin blog.csdn.net/zsheep/article/details/125583951