自学内容网 自学内容网

力扣刷题心得_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)!