Java数据结构
文章平均质量分 91
I_Am_Me_
这个作者很懒,什么都没留下…
展开
-
【Java数据结构】栈 (Stack)
题目:中缀表达式a+b*c+(d*e+f)*g,其转换成后缀表达式为abc*+de*f+g*+。顺序遍历pushV,如果栈顶元素和popV当前元素相同,则弹出,不同则将pushV当前元素入栈。出栈:判断出栈元素和最小栈栈顶元素关系,相同则最小栈也出去。,进栈过程中可以出栈,则下列不可能的一个出栈序列是()依次入栈,然后再依次出栈,则元素出栈的顺序是( )。栈帧:运行一个方法、一个函数时,给它开辟的内存。栈、虚拟机栈、栈帧有什么区别呢?类似,都是动态的顺序表,不同的是。出栈:栈的删除操作叫做出栈。原创 2024-10-06 12:26:33 · 363 阅读 · 0 评论 -
【Java数据结构】LinkedList
LinkedList的底层是双向链表结构,由于链表没有将元素存储在连续的空间中,元素存储在单独的节点中,然后通过引用将节点连接起来了,因此在在任意位置插入或者删除元素时,不需要搬移元素,效率比较高。在集合框架中,LinkedList也实现了List接口,具体如下【说明】实现了List接口的底层使用了双向链表没有实现接口,因此LinkedList不支持随机访问的任意位置插入和删除元素时效率比较高,时间复杂度为O(1)比较适合任意位置插入的场景。原创 2024-10-04 23:48:33 · 534 阅读 · 0 评论 -
【Java数据结构】初识集合框架
就是定义良好的计算过程,他取一个或一组的值为输入,并产生出一个或一组值作为输出。是计算机存储、组织数据的方式,指相互之间存在一种或多种特定关系的数据元素的集合。学习背后的数据结构知识,有助于我们理解各个集合的优缺点及使用场景。使用成熟的集合框架,有助于我们便捷、快速的写出高效、稳定的代码。:底层是队列,队列是一种特殊的顺序表。:底层是栈,栈是一种特殊的顺序表。:底层为哈希桶,查询的时间复杂度为。:底层为红黑树,查询的时间复杂度为。:底层为红黑树,查询的时间复杂度为。:集合,是一个接口,里面放置的是。原创 2024-09-28 20:46:48 · 309 阅读 · 0 评论 -
【Java数据结构】时间和空间复杂度
1.2.3.下面求斐波那契数列的算法好还是不好,为什么?该如何衡量一个算法的好坏呢?。。在计算机发展的早期,计算机的存储容量很小。所以对空间复杂度很是在乎。但是经过计算机行业的迅速发展,计算机的存储容量已经达到了很高的程度。所以我们如今已经不需要再特别关注一个算法的空间复杂度。时间复杂度的定义:在计算机科学中,,它定量描述了该算法的运行时间。一个算法执行所耗费的时间,从理论上说,是不能算出来的,只有你把你的程序放在机器上跑起来,才能知道。但是我们需要每个算法都上机测试吗?原创 2024-09-28 21:24:52 · 629 阅读 · 0 评论 -
【Java数据结构】JDK-17新增特性
使用sealed后面没有用permits则都可以继承,但继承的必须被non-sealed或者sealed或者final修饰,如果被sealed修饰则需要继续被继承(必须要有子类)如果你的⼀⾏代码中有多个⽅法、多个变量,可以快速定位问题所在,如果是 JDK8,有些情况下真的不太容易看出来。官⽅维护的版本都是SpringBoot3.X的了,但是之前的版本也是可以⽤的,只是官⽅不再进⾏功能更新了.有时候,类型名称可能会⾮常⻓,例如泛型。修饰了,被修饰的类就变成完全封闭的状态了,所有类都没办法继承。原创 2024-09-29 20:25:27 · 680 阅读 · 0 评论 -
【Java数据结构】泛型初识
实现一个类,类中包含一个数组成员,使得数组中可以存放任何类型的数据,也可以根据成员方法返回数组中某个下标的值?虽然在这种情况下,当前数组任何数据都可以存放,但是,更多情况下,我们还是希望他只能够持有一种数据类型。要么是基本类型,要么是自定义的类。如果要编写可以应用于多种类型的代码,这种刻板的限制对代码的束缚就会很大。在定义泛型类时,有时需要对传入的类型变量做一定的约束,可以通过类型边界来约束。下面的类型擦除部分,我们也会讲到编译器是如何使用裸类型的。我们不要自己去使用裸类型,裸类型是为了兼容老版本的。原创 2024-09-28 23:31:50 · 640 阅读 · 0 评论 -
【Java数据结构】 ArrayList 顺序表
在集合框架中,原创 2024-10-02 00:23:42 · 800 阅读 · 0 评论 -
【Java数据结构】 链表
1.2.3.上节课已经熟悉了ArrayList的使用,并且进行了简单模拟实现。通过源码知道,ArrayList由于其底层是一段连续空间,当,效率比较低,因此。因此:java集合中又引入了LinkedList,即链表结构。链表是一种存储结构,数据元素的是通过链表中的次序实现的。实际中链表的结构非常多样,以下情况组合起来就有8种链表结构:单向------双向循环------ 非循环带头------ 不带头(1)(2)(3)虽然有这么多的链表的结构,但是我们重点掌握两种。原创 2024-10-03 22:13:20 · 709 阅读 · 0 评论