数据结构(Java)
文章平均质量分 86
学习一些数据结构
Dikz12
吾愚多不敏,而愿加学
展开
-
Map和Set讲解
Map和Set集合类原创 2024-02-02 11:31:36 · 1231 阅读 · 39 评论 -
优先级队列(堆) PriorityQueue
优先级队列介绍 和 堆的创建、插入、删除原创 2024-01-21 16:44:31 · 1454 阅读 · 37 评论 -
二叉树OJ练习(二)
1.二叉树的公共祖先 2.从前序与中序遍历构造二叉树 3.从中序与后序遍历构造二叉树 4.根据二叉树创建字符串5.二叉树前序非递归实现原创 2024-01-08 19:12:17 · 586 阅读 · 14 评论 -
实现二叉树的基本操作与OJ练习
,如果不是空树,先把根节点放到队列里,此时队列不为空,当该节点出队是,用cur记录,不为空并把该节点的左、右节点放进队列。如下代码:就会发现求节点3的高度,把每个节点都求了一遍。求节点9的高度时,也把每个节点都求了一遍。题目描述:编一个程序,读入用户输入的一串先序遍历字符串,根据此字符串建立一个二叉树(以指针方式存储)。是不是一颗平衡二叉树,当前根节点的左右子树的高度差的绝对值<=1&&根左子树平衡&&根右子树平衡。也是引入队列解决,当cur不为空把该节点的左、右节点放进队列;所以,就是要解决从左到右。原创 2023-12-30 17:35:35 · 800 阅读 · 22 评论 -
了解树和学习二叉树
二叉树介绍原创 2023-12-23 15:56:22 · 1561 阅读 · 23 评论 -
栈(Stack)和队列(Queue)练习
逆波兰表达式求值,有效的括号,最小栈,栈的压入、弹出序列,设计循环对列原创 2023-11-28 17:58:50 · 808 阅读 · 24 评论 -
了解栈和队列
栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈 顶,另一端称为栈底。栈中的数据元素遵守后进先出)的原则。压栈:栈的插入操作叫做进栈压栈入栈,。出栈:栈的删除操作叫做出栈。。原创 2023-11-06 15:14:23 · 359 阅读 · 25 评论 -
链表-oj题
2.定义bs、be记录<x,as、ae记录 >= x,且bs和as永远都是两部分的头 、2.定义一个temp起始放在新节点的位置,用来传递两个链表比较之后的指向。题解: 1.用car遍历链表分割成两部分,节点放在<x || >= x。2.找删除节点的前一个节点 3.处理特殊情况。3.让长链表先走这两个链表的差(大于0)题解:1.定义一个新的节点,用的记录合并之后的head地址。题解:1.两个链表相交,不同点就是相交点之前的长度可能不同。2.该链表为单向链表,所以需要把中间节点的后半部反转。原创 2023-10-29 17:02:27 · 245 阅读 · 24 评论 -
ArrayList和LinkedList的区别
在集合框架中,ArrayList是一个普通的类,实现了List接口,具体框架图如下:原创 2023-10-22 15:24:19 · 164 阅读 · 13 评论