![](https://img-blog.csdnimg.cn/5eec84580b8b4829a0f40deb208dc94e.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构
文章平均质量分 86
CSihang
这个作者很懒,什么都没留下…
展开
-
【数据结构】栈和队列
队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出FIFO(First In First Out) 入队列:进行插入操作的一端称为。环形队列可以使用数组实现,也可以使用循环链表实现。队列也可以数组和链表的结构实现,使用链表的结构实现更优一些,因为如果使用数组的结构,出队列在数组头上出数据,效率会比较低。,相对而言数组的结构实现更优一些。栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。出栈:栈的删除操作叫做出栈。压栈:栈的插入操作叫做进栈。原创 2023-04-21 15:11:08 · 102 阅读 · 1 评论 -
【数据结构】顺序表&链表
3.从堆上申请的空间,是按照一定策略来分配的,两次申请的空间有可能连续也可能不连续。但是在物理结构上并不一定是连续的,线性表在物理上存储时,通常以数组和链式结构的形式存储。,一般用在单独存储数据。线性表是一种在实际中广泛使用的数据结构,常见的线性表:顺序表、链表、栈、队列、字符串...所以现实中基本都是使用动态顺序表,根据需要动态的分配空间大小,所以下面我们实现动态顺序表。注意:1.从上图看出,链式结构在逻辑上是连续的,但是在物理上不一定连续。的存储单元依次存储数据元素的线性结构,一般情况下采用数组存储。原创 2023-04-19 16:36:29 · 109 阅读 · 0 评论 -
【数据结构】算法的时间复杂度和空间复杂度
时间复杂度的定义:在计算机科学中,算法的时间复杂度是一个函数,它定量描述了该算法的运行时间。一个算法所花费的时间与其中语句的执行次数成正比例,算法中的基本操作的执行次数,为算法的时间复杂度。6. 实例6基本操作执行最好1次,最坏O(logN)次,时间复杂度为 O(logN) ps:logN在算法分析中表示是底数为2,对数为N。在计算机发展的早期,计算机的存储容量很小。5. 实例5基本操作执行最好N次,最坏执行了(N*(N+1)/2次,通过推导大O阶方法+时间复杂度一般看最坏,时间复杂度为 O(N^2)。原创 2023-03-30 17:12:01 · 181 阅读 · 0 评论