
数据结构
璇焱如柳
这个作者很懒,什么都没留下…
展开
-
C++ STL,resize 和 reserve 的区别
resize和reserve扩容处理的区别,带来了主要问题就是push函数使用问题,比如vector的push_back()函数,如果是resize之后再push_back,容器会继续扩容,因为这时候容器已经满了;如果是reverse之后push_back,则会放到vector现有元素的后边。原创 2023-04-04 11:42:21 · 595 阅读 · 0 评论 -
C++ 手动创建二叉树,并实现前序、中序、后序、层次遍历
二叉树的创建是个麻烦事,我的思路是:首先将一个普通的二叉树转化为满二叉树,其中的空节点用一些标识数据来代替,如此一来,就可以用数组索引来描述数据在二叉树的什么位置了。原创 2022-12-07 20:01:42 · 1182 阅读 · 0 评论 -
C++ 手动实现队列(queue) (课后作业版)
队列,循环数组实现,进栈出栈的复杂度都是O(1)原创 2022-11-25 10:44:50 · 613 阅读 · 0 评论 -
C++ 手动实现栈(stack) (课后作业版)
栈,一种遵循先进先出原则的数据结构,可以用顺序表实现,也可以用链表进行实现。这里我使用数组实现方法,包含了进栈,出栈,访问栈顶等功能,以及一些辅助功能。原创 2022-11-24 19:18:53 · 1095 阅读 · 0 评论 -
C++ 手动实现单向循环链表(课后作业版)
单向循环链表,并实现增删查改等功能首先定义节点类,类成员包含当前节点的值, 指向下一个节点的指针。循环链表的尾节点指向头节点原创 2022-11-23 15:23:59 · 727 阅读 · 0 评论 -
C++ 手动实现双向链表(作业版)
手动实现双向链表,包含增删查改功能,附源码原创 2022-11-22 19:42:48 · 840 阅读 · 0 评论 -
C++ 单向链表手动实现(课后作业版)
单向链表,并实现增删查改等功能原创 2022-11-21 15:25:03 · 391 阅读 · 0 评论