Skip to content

wybks2/leetcode-

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 

Repository files navigation

leetcode-

this is an repository of algorithm

图解算法 小结

数组与链表

  1. 数组与链表都可以用于存储大量元素
  2. 数组擅长查找, 链表擅长插入删除

递归函数

  1. 递归指的是调用自己的函数
  2. 基线条件和递归条件
  3. 栈有两种操作:压入与弹出
  4. 所有函数调用都进入调用栈
  5. 调用栈可能很长,占用大量内存

快速排序

问1:什么是快速排序(使用分而治之的策略)

散列函数

  1. 输入一个值,对应另外的值,一种映射。 js的对象 python的字典。
  2. 实际应用 域名映射ip地址 该过程叫dns解析
  3. 冲突 散列函数 不能完美地分配每一个地址 当键位存在同一个内存中时 会以链表方式存储 效率就会下降。
  4. 较低的填充因子,较好的散列函数
  5. SHA算法
  6. 散列表的性能 散列表由数组与散列函数组成 数据=> 散列函数 => 存储在数组的位置 映射关系
  7. 一般填充因子为0.7的时候加长 但是这个应该跟散列函数的性能有关

散列表是一种很优秀的数据结构,查找插入删除 在均匀分布的情况下能够达到O(1),极限分布情况下,也不过是O(N)。可用作缓存,防止重复等功能。

广度优先算法

  1. 广度优先算法 一般解决 最短路径问题 或者 某一点是否能到另一点的路径问题

  2. 首先了解什么是图 用节点(node) 跟边(edge)组成

  3. 反转链表

About

this is an repository of algorithm

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published