数据结构算法-1

一、数据结构(简单到复杂)

1.Array            数组      

2.Stack / Queue        堆 / 队列    

3.PriorityQueue (heap)     优先队列 、堆 

4.LinkedList (single / double)    列表     

5.Tree / Binary Tree     树 / 二叉树  

6.Binary Search Tree     二叉搜索树  

7.HashTable        哈希表      

8.Disjoint Set         并查集

9.Trie           字母树 

10.BloomFilter                          布隆过滤器

11.LRU Cache        最近最久未使用法?

二、算法

1、脑图在线链接地址: https://www.processon.com/embed/5fc9d408e0b34d4f98d100c0

算法脑图

三、时间复杂度的表现形式(常用)

1.O(1)       常数复杂度

2.O(log n)    对数复杂度

3.O(n)       线性复杂度

4.O(n^2)        平方复杂度

5.O(n^3)           立方复杂度

6.O(2^n)   指数复杂度

7.O(n!)      阶乘

图:

四、举例如何优化程序

从1+2+3+4+5+6+7+8+9+10+11+12...+98+99+100

1.使用循环写(伪码)

y=0
for i=1 to n:
  y=i+y

时间复杂度为 : O(n)

2.通过求和公式 n(n+1)/2

y=n*(n+1)/2

时间复杂度为 : O(1)

坚持!刻意练习!

原文地址:https://www.cnblogs.com/bigroc/p/13964091.html