学习笔记
栈(Stack): 先进后出 添加 & 删除 时间复杂度皆为 O(1) 查询时间复杂度为 O(n)
队列(Queue): 先进先出 添加 & 删除 时间复杂度皆为 O(1) 查询时间复杂度为 O(n)
双端队列(Deque): 栈和队列的结合体 特点:头和尾均可进行元素的出和入操作 插入 & 删除 时间复杂度皆为 O(1) 查询时间复杂度为 O(n)
优先队列(Priority Queue): 是一个接口;或定义的一种抽象数据结构;底层的实现有很多种。 插入操作时间复杂度为 O(1) 取出操作时间复杂度为 O(logN),按照元素的优先级取出(类似于VIP,可以插队,优先处理) 底层数据结构较为复杂和多样:heap(堆),bst,treap
学习心得
从事编码工作多年,一直觉得自己都是在业务层徘徊。这次狠下心想要改变现状,报了算法训练营,之前也有看过一些算法和数据结构的书籍,看完后觉得云里雾里的,正如覃超老师在课程中提及的那样,凡事都要求理解,到最后不懂还是不懂,学习效果几乎为零。这次通过使用覃超老师的“五毒神掌”方法,虽然是使用最笨的那种方法——记忆代码,但是感觉通过多方的实践,慢慢的也get到一些点。本周的学习方式,一直都是“五毒神掌”,简直是神器。