DSA
文章平均质量分 89
世界仙境与冷酷尽头
I do not care about politics, whereas it never leaves me alone.
展开
-
归并交换基数简单选择排序
排序原创 2023-07-28 09:45:38 · 258 阅读 · 0 评论 -
HashMap查找
哈希map原创 2023-07-28 09:46:08 · 783 阅读 · 0 评论 -
AVL/B-/+ Tree查找
查找原创 2023-07-28 09:46:46 · 328 阅读 · 0 评论 -
DSA之查找(1):线性表的查找
查找原创 2023-07-27 18:50:19 · 173 阅读 · 0 评论 -
DSA之图(4):图的应用
图原创 2023-07-27 18:50:27 · 1193 阅读 · 0 评论 -
DSA之图(3):图的遍历
图的遍历DFS BFS原创 2023-07-27 18:50:35 · 151 阅读 · 0 评论 -
DSA之图(2):图的存储结构
图原创 2023-07-27 18:50:46 · 444 阅读 · 0 评论 -
邻接矩阵与邻接表
图原创 2023-07-29 08:47:46 · 468 阅读 · 0 评论 -
树及其遍历
DSA树原创 2023-07-29 08:48:17 · 232 阅读 · 0 评论 -
queue
一种可以实现“先进先出”的存储结构。并且只允许一端入,另一端为出。而且不能对中间的元素进项进行插入删除。栈是先进后出。且只允许在一端插入与删除,就是入口与出口都是同一个。对链表进行一些操作和限制,就成了队列。在栈当中,头部尾部的代号是Top和Bottom;队列当中,头部尾部的表达式是front和rear。用数组实现,定义头部与尾部之后,也可以实现队列,即把数组的一些功能砍掉,再增加一点队列的功能。静态队列都必须是循环队列。需要搞懂:如果f指向第一个元素,r指向最后一个的话,不好操作,参考链表,链表的第一个原创 2023-07-28 09:47:11 · 247 阅读 · 0 评论 -
Stack
在静态内存当中分配的叫做栈,在动态内存中分配的叫做堆。**红色椭圆圈当中的就是在栈中分配的,蓝色下划线的就是在堆里分配的。**栈和堆表示的是分配数据的一种方式。静态局部变量是通过压栈和出栈来分配内存的,而动态变量是通过堆排序的方式来分配内存。所以,栈是一种可以实现“先进后出”的存储结构,栈类似于箱子(有底)。以数组为最基本的内核。不连续,其内核是链表(不允许尾部插入尾部删除)。最常用的是动态栈。压栈和出栈。push&pop初始化后的栈:push的操作判断栈是否为空,则看pTop与pBottom是原创 2023-07-28 09:47:31 · 123 阅读 · 0 评论 -
Linked List
补充知识typedef给类型换名字,比如或者来一个结构体指针定义。离散存储离散的含义,任何一个点到其他点之间是有间距的。n个节点离散分配,彼此通过指针相连接,每个节点只有一个前驱节点,每个节点只有一个后继节点,首节点没有前驱节点,尾节点没有后继节点。确定一个链表需要几个参数?首节点可以通过头结点推出来,所以不是必须的,尾指针是0,因为没有后继节点,所以尾指针也不是必须的。尾节点也不是必须的,找到最后空的就知道尾节点,所以也不是必须的。头指针包含了指向头结点的地址,所以头结点也不是必须的,记下头指针原创 2023-07-28 09:47:59 · 752 阅读 · 0 评论