随笔分类 - 数据结构
摘要:栈 栈模型 栈(stack)是限制对元素的插入(push)和删除(pop)只能在一个位置上进行的表,该位置是表的末端,叫做栈的栈顶(top)。 栈的基本操作只有两种,压入栈(push)和弹出栈顶(pop),且只能作用于栈顶。(只有栈顶元素是可访问的 你可以把栈结构理解成一个底部封闭,顶部打开的桶。最
阅读全文
摘要:什么是单向循环链表 单向循环链表基本与 "单向链表" 相同,唯一的区别就是单向循环链表的尾节点指向的不是null,而是头节点(注意:不是头指针). 因此,单向循环链表的任何节点的下一部分都不存在NULL值。 由于单向循环链表的特性,它在处理一些环状数据的时候十分有效.大名鼎鼎的约瑟夫环问题就可以用循
阅读全文
摘要:什么是双向循环链表 在了解双向循环链表之前,如果对链表还没有一个清晰的概念,建议你看看 "单链表" 和 "单向循环链表" ,这有利于你更好的理解下面的内容。(废话有点多[逃] 相比单链表,双向循环链表是一个更加复杂的结构。因为双向循环链表的节点不仅包含指向下一个节点的指针(next),还包含指向前一
阅读全文
摘要:什么是单链表 在了解单链表之前,你知道什么是链表吗?如果你不知道什么是链表,可以看看我的这篇博客<链表-LinkList> 单链表是链表的其中一种基本结构。一个最简单的结点结构如图所示,它是构成单链表的基本结点结构。在结点中数据域用来存储数据元素,指针域用于指向下一个具有相同结构的结点。 因为只有一
阅读全文
摘要:什么是链表 维基百科:链表(Linked list)是一种常见的基础数据结构,是一种线性表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针(Pointer)。由于不必须按顺序存储,链表在插入的时候可以达到O(1)的复杂度,比另一种线性表顺序表快得多,但是查找一个节点或者访问特
阅读全文
摘要:什么是顺序表 顺序表是在计算机内存中以数组的形式保存的线性表,是指用一组地址连续的存储单元依次存储数据元素的线性结构。 在使用顺序表存储数据前,会先申请一段连续的内存空间(即数组),然后把数组依次存入内存,中间没有一点空隙。 基本操作 每个数据结构都有集合对数据处理的方法,这能让我们更方便的使用保存
阅读全文

浙公网安备 33010602011771号