数据结构
文章平均质量分 92
好像有点东西
持续学习中。。。
展开
-
【数据结构】红黑树
红黑树(Red-Black Tree)是一种自平衡的二叉搜索树,它在每个节点上增加了一个额外的属性,即颜色,可以是红色或黑色。通过满足一定的约束条件,红黑树能够保持较佳的平衡性,从而保证基本的操作(插入、删除、查找)的时间复杂度为 O(log n)。红黑树常见的应用包括标准库中的关联容器(例如C++中的std::map和std::set)、数据库的索引结构、以及在操作系统中的进程调度等方面。原创 2024-04-16 17:17:01 · 942 阅读 · 0 评论 -
【C++】AVL树详解
AVL树是一种高效的自平衡二叉搜索树,在计算机科学领域得到广泛应用。本文主要介绍了AVL树的概念、节点定义、AVL树的实现以及验证,其中包括对平衡因子的解释,研究在插入节点时,如何通过旋转来调节平衡因子来保持AVL树的特性。原创 2024-02-29 21:10:59 · 1164 阅读 · 0 评论 -
【数据结构】排序
在数据结构中,排序是指将一组数据按照一定的规则或者条件进行重新排列的过程,以使得数据按照升序或降序排列。排序是算法领域中非常重要的一个基本操作,常用于对数据进行整理、查找和优化处理。经常在日常生活中使用原创 2023-07-24 16:26:18 · 220 阅读 · 0 评论 -
【数据结构】二叉树的概念、结构和实现
在计算机科学中,树是由结点和边组成的一种数据结构。它由一个根节点开始,分支向下连接到树的其他节点,每个节点可以有任意数量的子节点。树是一种递归的数据结构,每个子树都是独立的树,而整个树的高度是从根节点到最深的子节点的边的数量。二叉树是最为常用的一种树原创 2023-06-16 14:40:17 · 190 阅读 · 0 评论 -
【数据结构】堆(Heap)的概念、结构及其实现
堆排序是一种利用堆数据结构进行排序的算法。堆是一种特殊的完全二叉树,分为最大堆和最小堆两种形式。利用堆的性质,在建立堆的过程中,将待排序的序列重构为一个堆,然后每次将堆顶元素与末尾元素交换,并调整堆,直到完成排序。原创 2023-07-20 17:22:11 · 2184 阅读 · 0 评论 -
【数据结构】栈和队列
栈和队列是数据结构中比较基础的两种数据结构,它们都是线性结构,但是在数据存储和操作方式上有一些区别。栈的特点是后进先出,只能在一端进行插入和删除操作,存储结构有顺序栈和链式栈两种。队列的特点是先进先出,只能在队尾插入元素,在队头删除元素,存储结构有顺序队列和链式队列两种。在实际应用中,栈和队列都有广泛的应用,例如程序的函数调用、表达式求值、图的遍历等。掌握栈和队列的基本概念和操作方法,对于学习其他数据结构和算法具有重要的意义。原创 2023-05-23 16:44:10 · 198 阅读 · 2 评论 -
【数据结构】顺序表和链表
顺序表和链表是数据结构中常用的两种数据存储方式。顺序表是一种线性数据结构,它由一组相同类型的数据元素组成,这些元素按照一定的顺序排列。顺序表的实现方式是用数组来存储元素,同时记录表的长度和容量。链表的大小可以动态地改变,可以在表的任意位置插入或删除元素原创 2023-05-22 18:06:41 · 328 阅读 · 0 评论 -
【数据结构】算法的时间复杂度和空间复杂度
在计算机科学中,算法的时间复杂度是一个函数,它定量描述了该算法的运行时间。一个算法所花费的时间与其中语句的执行次数成正比,算法中的基本操作的执行次数,为算法的时间复杂度。空间复杂度也是一个数学表达式,是对一个算法在运行过程中临时占用存储空间大小的量度 。原创 2023-05-06 17:41:39 · 136 阅读 · 0 评论