Current location - Education and Training Encyclopedia - University rankings - Data structures and algorithms are not understood by universities.
Data structures and algorithms are not understood by universities.
How do data structure college students learn data structure? Five context diagrams

data structure

Data structure is the way that computers store and organize data. A data structure refers to a collection of data elements that have one or more specific relationships with each other. Generally, a well-chosen data structure can lead to higher operation or storage efficiency.

Related terms

In data structure and algorithm, some students don't understand the relationship among data, data objects, data elements and data items. To stroke by painting:

Three elements of data

The three elements of data structure are divided into logical structure, storage structure and data operation. Logical structure is divided into linear structure and nonlinear structure; The storage structure is divided into sequential storage, chain storage, index storage and hash storage. Data manipulation includes definition and implementation.

Data structure learning steps

Design and implementation of single linked list (leading node and non-leading node) (adding, deleting and changing), and design and implementation of double linked list.

Stack design and implementation (array and linked list), queue design and implementation (array and linked list)

Second, learn the concept of tree. Second, recursively and non-recursively traverse the pre-order, middle-order and post-order, and traverse the sequence.

Design and implementation of two-dimensional sort tree (insert and delete)

Heap (priority queue, heap sort)

Design and Implementation of AVL (Balance) Tree (Understanding and Implementation of Four Rotation Modes)

Conceptual understanding of stretch tree and red-black tree principle

Understand the concept of B and B+ principle.

Conceptual Understanding of Huffman Tree Principle (Greedy Strategy)

Understand the concept of hash (hash table) principle (several methods to solve hash conflict)

Union/Disintersection (Optimization and Path Compression)

Graph theory topological sorting

Graph theory dfs depth-first traversal and bfs breadth-first traversal.

Diikstra algorithm of shortest path, Floyd algorithm, spfa algorithm.

Prim algorithm and kruskal algorithm of minimum spanning tree

Other data structures, line trees, suffix arrays, etc.

Classical algorithm learning steps

Recursive algorithm (factorial, Fibonacci, Hanoi Tower problem)

Binary retrieval

Divide and conquer algorithm (quick sorting, combined sorting, finding nearest point equivalence problem)

Greedy algorithm (widely used, interval selection problem, interval coverage problem)

Common dynamic programming (LCS (longest common subsequence) LIS (Longest Ascending Subsequence) knapsack problem and so on.

Backtracking algorithm (classical eight queens problem, total permutation problem)

Common problems in bit operation (refer to the problem of sword finger offering and LeetCode)

Fast power algorithm (fast power, fast matrix power)

Kmp and other string matching algorithms

All other number theory algorithms (Euclid, extended Euclid, China remainder theorem, etc. )