力扣刷题心得_JAVA
数学 > 数组 > 链表 > 字符串 > 哈希表 > 双指针 > 递归 > 栈 > 队列 > 树
//一般力扣中传入的参数和新建的对象作为返回值,都不列入空间复杂度中
//但是面试的时候要和面试官商量好,灵活定义空间复杂度
//当然最好是就在传入的对象作为返回值,(在原对象上改,没这种方法就没办法了)
2字节是65535
数组
方法API
针对int或integer
Math.abs() //获取绝对值
Math.pow(a,b)//获取平方值a为值,b为幂次
链表
字符串
哈希表
双指针
递归
栈
队列
树
广度优先搜索(BFS)和深度优先搜索(DFS)
- 像树前中后序遍历都是深度优先搜索
深度优先搜索一般结合栈作为工具
二叉树的前中后序遍历可以用迭代遍历\递归遍历\统一迭代法遍历
无论是迭代遍历还是递归遍历都是用的栈的思想
迭代遍历使用的栈存数据
递归遍历使用的栈运行程序,每调用一次递归函数就入栈一个栈帧
可以说递归就是在逻辑和在jvm虚拟机层面上用的栈 - 层序遍历是广度优先搜索
广度优先搜索一般结合队列实现
用链表也可以,但是逻辑上太麻烦了,而队列就是以链表为基础,特殊的链表,实现特殊的功能,有队列为什么不用呢
原文地址:https://blog.csdn.net/m0_64213455/article/details/145246925
免责声明:本站文章内容转载自网络资源,如侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!