数据结构就是一个容器,以特定结构存储数据,使其在某些数据结构上非常有效,可以根据需求,以特定的格式存储数据。
常用的数据结构:
数组:每个元素有个正的索引值(以0开始)
Insert-----给定索引位置插入元素
Get-----返回给定索引位置的元素
Delete-----删除给定索引位置的元素
Size----获取组内所有元素的总数
堆栈:LIFO工作原理,(撤销操作)
Push----在顶部插入元素
Pop----从堆栈删除元素后返回顶部元素
isEmpty----堆栈为空,返回true
Top----返回顶部元素,但不从堆栈删除
队列:FIFO
Enqueue----向队列末尾插入元素
Dequeue----从队列头部移除元素
isEmpty----如果队列为空,返回true
Top----返回队列的第一个元素
链表:节点链,每个节点包含数据和指向后续节点的指针等信息。链表的头指针指向链表的第一个元素,如果列表是空的,那么它只指向null或者不指向任何内容。常用于实现文件系统、哈希表、邻接表。常分为单链表和双链表
InsertAtEnd----在链表末尾插入元素
InsertAtHead----在链表头部插入元素
树:层级数据结构,包含了连接他们呢的节点和变。树和图的区别是灭有循环。树广泛应用于人工智能和复杂的算法中,提供高效的存储机制。
图:一组节点,以网络形式互相连接。
字典树:在解决字符串相关问题很高效,提供快速的检索功能,为搜索引擎自动搜索建议。
哈希表: