zoukankan      html  css  js  c++  java
  • 数据结构算法-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)

    坚持!刻意练习!

  • 相关阅读:
    #4702. gcd
    独特的树叶

    搞笑的代码 ( funny )
    越野赛车问题
    删边(cip)
    最长公共子序列
    美食节
    线段树
    新年快乐
  • 原文地址:https://www.cnblogs.com/bigroc/p/13964091.html
Copyright © 2011-2022 走看看