
Java数据结构
文章平均质量分 82
Java数据结构的学习内容(重中之重)
zhanglf6699
爱德华写小说优雅美得花一朵
展开
-
Java数据结构之二叉树经典面试OJ题(下)
二叉树遍历二叉树的分层遍历1. 二叉树遍历题目描述:示例1输入:abc##de#g##f###输出:c b e g d f a题目分析: 题目给定一个字符串,这个字符串是一个先序遍历结果(’ # ’ 代表当前节点为空),题目要求我们根据这个字符串创建二叉树并打印中序遍历结果,我们只需:遍历字符串,字符串当前位置的值不为空时,创建节点,并继续向后遍历字符串当前位置的值为空时,直接向后遍历创建完二叉树后对二叉树进行中序遍历,并打印中序遍历结果即可代码实现:import j原创 2022-02-13 11:47:40 · 582 阅读 · 0 评论 -
Java数据结构之二叉树经典面试OJ题(上)
1.检查两棵树是否相同2.另一棵树的子树3.二叉树的最大深度4.判断一颗二叉树是否是平衡二叉树5.对称二叉树6.二叉树的构建及遍历7.二叉树的分层遍历8.给定一个二叉树,找到该树中两个指定节点的最近公共祖先9.二叉搜索树转换为成排序双向链表10.根据一棵树的前序遍历与中序遍历构造二叉树11.根据一棵树的中序遍历与后序遍历构造二叉树12.二叉树创建字符串1. 检查两棵树是否相同题目:题目分析:根据题意,树结构相同且节点值相同的两棵树为相同的树当所有节点的结构都相同时,树的原创 2022-01-21 16:05:16 · 578 阅读 · 1 评论 -
Java时间复杂度和空间复杂度
1. 算法效率2. 时间复杂度 2.1 时间复杂度的概念 2.2 大 O 的渐进表示法3. 空间复杂度1. 算法效率 算法效率分为两种,一种是时间效率,一种是空间效率,时间效率又称时间复杂度,空间效率又称空间复杂度。时间复杂度主要衡量的是一个算法的运行速度,而空间复杂度主要衡量的是算法额外需要的运行空间。在计算机才初步发展的年代,计算机的存储容量非常小,人们对算法空间复杂度的重视程度远远大于时间复杂度,但随着计算机技术的迅速发展,计算机的内存容量已经有了非常大的提高,所以现在原创 2021-11-03 12:21:58 · 314 阅读 · 2 评论 -
Java数据结构之稀疏数组
稀疏数组稀疏数组的应用场景二维数组转稀疏数组稀疏数组转二维数组稀疏数组的应用场景:在编写五子棋时,需要有存盘退出和读取游戏的功能,但当棋盘上的棋子非常少时,其余默认值均是0,这样就记录了很多无意义的值,因此我们会用到稀疏数组:下图是一个二维数组,这个数组中大部分元素都为0,那么就可以将这个数组转为稀疏数组:对于这个数组,我们设置一个n行3列稀疏数组来存放这个数组中不为0的元素: 第0行,我们存放原数组行、列数和不为0元素的个数,原数组共6行7列,数组中不为0的元素共8个,那么稀疏数原创 2021-12-13 12:42:12 · 720 阅读 · 0 评论 -
Java数据结构之普通队列和循环队列
超详细队列和循环队列解析(图解+数组代码实现)~~~~~原创 2021-12-14 21:03:05 · 957 阅读 · 0 评论 -
Java数据结构之栈的代码实现
Java数组和链表实现栈的模拟原创 2021-12-16 14:31:13 · 2141 阅读 · 1 评论 -
Java数据结构之栈和队列的相互实现(LeetCode题目)
用栈实现队列题目:请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作(push、pop、peek、empty):实现 MyQueue 类: void push(int x) 将元素 x 推到队列的末尾 int pop() 从队列的开头移除并返回元素 int peek() 返回队列开头的元素 boolean empty() 如果队列为空,返回 true ;否则,返回 false说明: 你只能使用标准的栈操作 —— 也就是只有 push to t原创 2022-01-16 18:37:13 · 527 阅读 · 2 评论