程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Python data structure and algorithm learning route

編輯:Python

Work hard , Strive for everyday 3 individual
Update progress :■■■■■■■■■■□□□□□□□□□□|50%
Currently updating : Sorting algorithm
The finger of the sword offer link : Click the jump
leetcode Topic classification : Click the jump
Learning content :

  • Basic algorithm : enumeration 、 Sort 、 Search for 、 recursive 、 Divide and conquer 、 Priority search 、 greedy 、 Double pointer 、 Dynamic planning, etc …
  • data structure : character string (string)、 list (list)、 Tuples (tuple)、 Dictionaries (dictionary)、 aggregate (set)、 Array 、 queue 、 Stack 、 Trees 、 chart 、 Pile etc. …

Catalog

  • 1. Mind mapping
  • 2. data structure :
    • 2.1 python Five data types
    • 2.2 python Implementation tree
    • 2.3 python Realize the figure
    • 2.4 python Implementation stack
    • 2.5 python Implement hash
    • 2.6 python Implementation of linked list
    • 2.7 python Implementation queue
  • 3. Basic algorithm :
    • 3.1 Sorting algorithm :
    • 3.2 Greedy Algorithm :
    • 3.3 Dynamic programming :
    • 3.4 Pointer problems
    • 3.5 Priority search
    • 3.6 lookup
    • 3.7 Recursion and divide and conquer
  • Reference article :

1. Mind mapping

​​​​​

2. data structure :

2.1 python Five data types

Basic knowledge of :python Five data types
practice :

  1. Array :
Topic classification Title label Traversal of array 485. Maximum continuous 1 Number ( Simple )
495. Timo attacks ( secondary )
414. The third largest number ( Simple )
628. The maximum product of three numbers ( Simple ) Count the elements in the array 645. The wrong set ( Simple )
697. The degree of the array ( Simple )
448. Find all the missing numbers in the array ( Simple )
442. Duplicate data in array ( secondary )
41. First positive number missing ( difficult )
274 Array changes 、 Move 453. The minimum number of operations makes the array elements equal ( Simple )
665. Non decreasing Columns ( Simple )
283. Move zero Two dimensional array and rolling array 118. Yang hui triangle ( Simple )
119. Yang hui triangle II( Simple )
661. Image smoother ( Simple )
598
419 Rotation of the array 189. Rotated array ( secondary )
396. Rotation function ( secondary ) Traverse a two-dimensional array in a specific order 54
59
498 Two dimensional array transformation 566. Reshaping the matrix ( Simple )
48
73
289 Prefixes and arrays 303
304
238
  1. character string
Topic classification Title label character 520. Detect capital letters ( Simple ) Definition of palindrome string 125. Verify the palindrome string ( Simple ) Public prefix 14 word 434、58 Inversion of string 344. Reverse string
541
557
151 Statistics of characters 387
389
383
242
49
451
423
657
551
696
467
535 Conversion between numbers and strings 299、412、506、539、553、537、592、640、38、443、8、13、12、273、165、481 Subsequence 392、524、521、522 High precision operation 66、67、415、43、306 String transformation 482. Key format ( Simple )
6. Z Font conversion ( secondary )
68 string matching 28
686
459
214 Center expansion method 5
647
  1. An operation
Topic classification Title label Digital bit operation 7. Integer inversion
9. Palindrome number
479
564
231. 2 The power of
342. 4 The power of 326. 3 The power of
504
263
190
191
476
461
477
693
393
172
458
258
319
405
171
168
670
233
357
400 Simple math problems 492
29
507 Fast power 50,372

2.2 python Implementation tree

Basic knowledge of : Click the jump
practice :

Topic classification Title label Recursion of trees 100. Same tree ( Simple )
222. The number of nodes in a complete binary tree ( secondary )
101. Symmetric binary tree ( Simple )
226. Flip binary tree ( Simple )
437. The sum of the paths III( secondary )
563
617
508
572
543
654
687
87 Tree level traversal 102
429
690
559
662
671
513
515
637
103
107
257
623
653
104
111
112
112
129
404
199
655
116
117 Preorder traversal of a tree 144
589 Foreword instantiation of tree 606
331
652
297
449 Postorder traversal of the tree 145
590 Middle order traversal of tree and binary search tree 94
700
530
538
230
98
173
669
450
110
95
108
109 Reconstruct the binary tree 105
106 Expansion of binary tree 114 Recent public ancestor 235
236Morris In the sequence traversal 501
99 quadtree 558
427

Leetcode 104 110 543

2.3 python Realize the figure

2.4 python Implementation stack

practice :Leetcode 20

2.5 python Implement hash

practice :Leetcode 1 128

2.6 python Implementation of linked list

python Linked list of data structures (linked list)

2.7 python Implementation queue

practice :
Leetcode 21 23
Leetcode 2

3. Basic algorithm :

3.1 Sorting algorithm :

Basic knowledge of : Click the jump
practice :
Leetcode Sort + Double pointer -15
Leetcode Sort + Double pointer -16
147. Insert and sort the linked list ( secondary )
148

3.2 Greedy Algorithm :

Basic knowledge of :
practice :
Leetcode 14- Distribution problem
Leetcode 435- Interval problem
Leetcode 135- Distribution problem
Leetcode 605- Distribution problem
Leetcode 455- Distribution problem

3.3 Dynamic programming :

Basic knowledge of : Click the jump
practice :
Fibonacci sequence :
70. climb stairs ( Simple )
198. Robbers rob ( Simple )
213. The robbers robbed in the ring street ( secondary )

Matrix path :
64. The minimum path sum of matrices ( secondary )
62. The total number of paths to the matrix ( secondary )

Array interval :
303. Array interval sum ( Simple )
413. The number of sub intervals with increasing difference in the array ( secondary )

Split integers :
343. Divide the maximum product of integers ( secondary )
279. Divide integers by square ( secondary )
91. Split integers to form an alphabetic string ( secondary )

The longest increasing subsequence :
300. The longest increasing subsequence ( secondary )
646. The longest chain that a set of integer pairs can form ( secondary )
376. Longest oscillating subsequence ( secondary )

Longest common subsequence :
1143. Longest common subsequence ( secondary )

knapsack problem :
139. String is split by word list ( secondary )
416. Divide the array into two parts equal to and ( secondary )
494. Change the sign of a group of numbers so that their sum is a given number ( secondary )
474. 01 Characters make up the most strings
322. The minimum number of coins for change
518. A combination of coins for change
377. Combinatorial summation

Stock Exchange :
309. Stock trading that needs a cooling off period
714. Stock transactions that require transaction fees
123. Only two stock trades can be made
188. It can only be carried out k Second stock exchange

String editing :
583. Delete the characters of two strings to make them equal ( secondary )
72. Edit distance ( secondary )
650. Copy and paste characters ( secondary )
Leetcode 5
Leetcode 121
Leetcode 53

3.4 Pointer problems

Basic knowledge of :
practice :

3.5 Priority search

Basic knowledge of :
practice :

3.6 lookup

Basic knowledge of :
practice :

3.7 Recursion and divide and conquer

Basic knowledge of :
practice :

Reference article :

Learning process
leetcode Brush notes


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved