
数据结构和算法专题
整理总结数据结构和算法相关的知识
爱读书的张先生
世界上任何书籍都不能给你带来好运,但是它们能让你悄悄成为你自己。
展开
-
LeetCode刷题框架总结
LeetCode刷题框架总结01 | 数组和链表遍历框架1、数组遍历框架,典型的线性迭代结构void traverse(int[] arr) { for (int i = 0; i < arr.length; i++) { //迭代访问 arr[i] }}2、链表遍历框架,兼具迭代和递归结构/*基本的单链表节点*/class ListNode { int val; ListNode next;}/*迭代访问*/void trave原创 2020-08-07 22:12:02 · 489 阅读 · 0 评论 -
入门篇-复杂度分析:时间和空间
入门篇-复杂度分析:时间和空间01 | 前言1、导读1)数据结构和算法本身解决的是“快”和“省”的问题,即如何让代码运行得更快,如何让代码更省存储空间,在这里执行效率是算法一个非常重要的考量指标。2)复杂度分析是整个算法学习的精髓,只要掌握它,数据结构和算法内容基本上就掌握了一半。02 | 复杂度分析1、事后统计法1)定义:把代码跑一遍,通过统计、监控来计算算法的执行时间和占用内存大小。2)局限:测试结果非常依赖测试环境,测试环境中硬件的不同会对测试结果有很大的影响测试结果受数据原创 2020-07-29 15:44:02 · 259 阅读 · 0 评论 -
导论-数据结构和算法学习
导论-数据结构和算法学习01 | 学习的目的1、导读1)想要通关大厂面试,千万别让数据结构和算法拖了后腿2)学任何知识都是为了“用”的,是为了解决实际工作中的问题3)对各种框架、中间件和底层系统,不需要自己实现,并不代表什么都不需要了解4)在这些基础框架中,一般都揉和了很多基础数据结构和算法的设计思想5)掌握数据结构和算法,不管对于阅读框架源码,还是理解其背后的设计思想,都是非常有用的6)掌握了数据结构与算法,看待问题的深度,解决问题的角度就会完全不一样2、好处1)直接好处是能够有原创 2020-07-28 11:21:00 · 193 阅读 · 0 评论 -
数据结构和算法学习策略(超级干货!!!)
数据结构和算法学习策略01 | 数据结构总览02 | 算法总览03 | 刷题方法总览参考文献:[[1] 覃超. 算法训练营[M]. 极客时间, 2019.原创 2020-07-13 21:54:20 · 248 阅读 · 0 评论 -
数据结构与算法学习总览
数据结构与算法学习总览01 | 数据结构1、一维1)基础:数组 array,链表 linked list2)高级:栈 stack,队列 queue,双端队列 dequeue,集合 set,映射 map(hash or map), etc2、二维1)基础:树 Tree,图 Graph2)高级:二叉搜索树 binary search tree (red-black tree,AVL),堆 heap,并查集 disjoint set,字典树 Trie,etc3、特殊1)位运算 Bitw原创 2020-06-26 20:23:18 · 253 阅读 · 0 评论