随笔分类 - 数据结构
摘要:冒泡排序 图解 代码实现 package com.wiselee.sort; import java.util.Arrays; /** * @PROJECT_NAME: DataStruct * @DESCRIPTION: * @USER: 28416 * @DATE: 2022/12/11 13:
阅读全文
摘要:java.util.Stack; /** @PROJECT_NAME: DataStruct @DESCRIPTION: @USER: 28416 @DATE: 2022/11/30 14:41 逆波兰表达式 */ public class PolandNotation { public stati
阅读全文
摘要:栈实现计算器的操作 使用一个栈完成计算一个表达式的结果 使用两个栈:数栈(存放数) 符号栈(存放运算符) 思路 通过一个index值,来遍历我们的表达式 如果我们发现一个数字,就直接加入到树栈中 如果发现扫描到的是一个符号,就分如下情况来解决, 如果发现当前的符号栈就直接入栈 如果符号栈有操作符,就
阅读全文
摘要:单向环形列表 应用场景:约瑟夫环问题 思路: 创建第一个节点,让first指向该节点,并形成环状 后面当我们每创建一个新的节点,就把该节点,加入到已有的环形链表中即可 遍历环形链表 先让一个辅助变量,指向frist节点 然后通过一个while循环遍历该环形链表即可 curBoy.next == fi
阅读全文
摘要:单链表的面试题 1.求单链表中的有效节点的个数 /** * * @param heroNode 链表的头结点 * @return 返回的就是有效节点的个数 */ public static int getLength(HeroNode heroNode){ if (heroNode.next ==
阅读全文
摘要:队列 队列首先是一个有序列表,即可以用数组或是链表来实现 遵循先入先出的原则,即:先存入队列的数据,要先取出,后存入的要后取出 示意图: 数组模拟队列 队列本身就是有序列表,若使用数组的结构来存储队列的数据,则使用maxsize表示该队列的最大容量 因为队列的输出、输入是分别从前后端来处理,因此需要
阅读全文
摘要:稀疏数组 当一个数组中大部分元素为0,或者为同一个数值时,可以使用稀疏数组来保存该数组 稀疏数组的处理方法是: 1.记录数组一共有几行几列,有多少不同的值 2.把具有不同值的元素行列以及值记录在一个小规模的数组中,从而缩小程序的规模 应用实例 棋盘的一个案例 一般稀疏数组的列是固定的三个,分
阅读全文