常用数据结构
文章平均质量分 51
介绍实际开发中用到的数据结构
秋名RG
学习,实践,总结,分享
有事+Q:1369303774
展开
-
二叉树的广度优先遍历(层序遍历)
这种遍历不再按照父子节点的关系进行遍历,而是按照二叉树的节点层级,一层一层横向遍历各个节点,因此这种遍历也被称为。当我们遍历完当前层的所有节点后,我们将当前层的列表添加到结果列表中,并继续处理下一层的节点,直到队列为空。对于每个节点,我们将其值添加到当前层的列表中,并将其子节点(如果存在)添加到队列中。在while循环中,我们获取当前队列的大小(即当前层的节点数),然后遍历这些节点。在Java中,树的层序遍历通常使用队列(Queue)来实现。然后,我们创建一个队列并将根节点添加到队列中。原创 2024-03-31 17:16:31 · 535 阅读 · 0 评论 -
二叉树的深度优先遍历(前中后)
在上面的代码中,我们定义了preorderTraversalRecursive、inorderTraversalRecursive和postorderTraversalRecursive三个方法,分别用于前序、中序和后序遍历。对于前序遍历,我们先访问根节点,然后递归遍历左子树,最后递归遍历右子树。对于中序遍历,我们先递归遍历左子树,然后访问根节点,最后递归遍历右子树。对于后序遍历,我们先递归遍历左子树,然后递归遍历右子树,最后访问根节点。前序遍历是先输出根节点,再输出左子树,最后输出右子树。原创 2024-03-31 17:15:48 · 314 阅读 · 0 评论 -
什么是数据结构
数据结构,对应英文单词data structure,是数据的组织、管理和存储格式。原创 2024-03-16 15:40:01 · 193 阅读 · 0 评论 -
数组的定义和基本操作
数组(Array)是程序设计中一种非常重要的数据结构,它用于存储多个相同类型的数据元素,并且这些数据元素按照一定的顺序排列。通过为有限个类型相同的变量赋予一个统一的名称(即数组名),并使用编号(即下标)来区分这些变量,数组提供了一种方便的方式来管理和操作这些元素。数组中的每个元素都可以通过其下标进行访问,这使得我们可以快速地读取、修改或执行其他操作。数组的长度一旦确定,就不能再修改。在内存中,数组会占据一整块连续的空间,而数组名则引用这块连续空间的首地址。原创 2024-03-21 21:03:35 · 348 阅读 · 0 评论 -
链表的定义和基本操作
链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。它由一系列节点组成,每个节点包含两部分:数据域,用于存储数据元素;指针域,用于存储指向下一个节点的地址。链表在插入操作时可以达到O(1)的复杂度,但在查找或访问特定节点时则需要O(n)的时间。链表的主要特点是允许在任意位置插入和删除节点,从而实现了灵活的内存动态管理,克服了数组需要预先知道数据大小的缺点。链表有多种类型,包括单向链表、双向链表、循环链表等,每种类型都有其特定的应用场景和优势。原创 2024-03-21 21:04:34 · 168 阅读 · 0 评论 -
Java数组与链表的深度对比
数组和链表各有其优缺点,适用于不同的场景。在选择使用哪种数据结构时,需要根据具体需求进行权衡。如果数据量固定且需要频繁访问元素,数组可能是一个更好的选择;如果需要动态地添加或删除元素,或者在链表中间位置进行插入或删除操作,链表则更为合适。原创 2024-03-21 21:09:27 · 509 阅读 · 0 评论 -
栈的定义和基本操作
栈(Stack)是一种特殊的线性数据结构,它遵循后进先出(LIFO,Last In First Out)的原则。栈中的数据元素被称为栈元素,栈的顶部元素是最后入栈的元素,也是最先出栈的元素;而栈的底部元素是最先入栈的元素,但是只有在栈中其他元素都出栈后才能出栈。栈的基本操作主要包括入栈(Push)和出栈(Pop)。入栈操作是将一个新元素添加到栈的顶部;而出栈操作则是移除栈顶部的元素,并返回该元素的值。除了这两个基本操作外,栈还支持查看栈顶元素(Peek)以及判断栈是否为空(IsEmpty)等操作。原创 2024-03-21 21:15:07 · 421 阅读 · 0 评论 -
队列的定义和基本操作
在Java中,我们可以使用数组或链表来实现队列。原创 2024-03-24 23:20:50 · 148 阅读 · 0 评论 -
哈希表:以Java中的HashMap为例
在Java中,HashMap类是实现哈希表的一个非常流行的工具。原创 2024-03-29 19:36:22 · 419 阅读 · 0 评论 -
树和二叉树
二叉树(Binary Tree)是树形结构的一个重要类型,它的特点是每个节点最多有两个子节点,通常被称为左子节点和右子节点。2.当n>1时,其余节点可分为m个互不相交的有限集,每一个集合本身又是一棵树,并称为根的子树。1.有且仅有一个特定的称为根的节点。树的最大层级数,被称为树的。树是n个节点的有限集。原创 2024-03-29 19:52:57 · 303 阅读 · 0 评论