数据结构 | 栈-队列-链表

作者: 水土七口刀 | 来源:发表于2020-03-16 21:16 被阅读0次

定义:

一个由若干元素组成的有序集合,只能从一端进行添加和删除操作,遵循“后进先出”原则

操作:

  • Stack()创建一个新的空栈。它不需要参数,并返回一个空栈。
  • Push(item)将新项添加到堆栈的顶部。它需要参数 item 并且没有返回值。
  • pop()从栈顶删除项目。它不需要参数,返回 item。栈被修改。
  • peek()返回栈顶的项,不删除它。它不需要参数。堆栈不被修改。
  • isEmpty()测试看栈是否为空。它不需要参数,返回一个布尔值。
  • size()返回栈的项目数。它不需要参数,返回一个整数。

队列

定义:

一个由若干元素组成的有序集合,只能从一端(队尾)进行添加和另一端(队首)进行删除操作,遵循“先进先出”原则

操作:

  • Queue()创建一个空队列对象,无需参数,返回空的队列;
  • enqueue(item)将数据项添加到队尾,无返回值;
  • dequeue()从队首移除数据项,无需参数,返回值为队首数据项;
  • isEmpty()测试是否为空队列,无需参数,返回值为布尔值;
  • size()返回队列中的数据项的个数,无需参数。

双端队列

定义:

一个由若干元素组成的有序集合,可以从两端对序列进行添加和删除操作,是栈和队列的结合体,没有明确规则,需要人为制定。

操作:

  • Deque() 创建一个空双端队列,无参数,返回值为 Deque 对象。
  • addFront(item) 在队首插入一个元素,参数为待插入元素,无返回值。
  • addRear(item) 在队尾插入一个元素,参数为待插入元素,无返回值
  • removeFront() 在队首移除一个元素,无参数,返回值为该元素。双端队列会被改变。
  • removeRear() 在队尾移除一个元素,无参数,返回值为该元素。双端队列会被改变。
  • isEmpty() 判断双端队列是否为空,无参数,返回布尔值。
  • size() 返回双端队列中数据项的个数,无参数,返回值为整型数值。

链表

定义:

链表是一个无序序列,从外部指向的第一项通常被称为链表的头,每个元素的相对位置可以通过简单的链接从上一个项目到下一个来确定。

组成单元:

节点:节点必须包含列表元素本身。我们将这称为该节点的“ 数据区”;此外,每个节点必须保持到下一个节点的引用。

#python节点类定义
class Node:
    def __init__(self,initdata):
        self.data = initdata
        self.next = None
    def getData(self):
        return self.data
    def getNext(self):
        return self.next
    def setData(self,newdata):
        self.data = newdata
    def setNext(self,newnext):
        self.next = newnex

相关文章

  • 常见的数据结构

    常见的数据结构有: 数组 链表单链表、双向链表、循环链表、双向循环链表、静态链表 栈顺序栈、链式栈 队列普通队列、...

  • 数据结构

    数据结构 队列&栈&链表&集合&hash表&树&图 队列 先进先出 栈 先进后出 链表 单向链表 双向链表 循环链...

  • 文章列表

    基本数据结构 栈 队列 双端队列 无序链表 有序链表 递归 递归 搜索与排序 搜索

  • 数据结构 栈和队列

    数据结构 栈和队列 栈 顺序栈 top = -1 链栈 初始化 判断队空 入队: 头插法 出队: 单链表删除 队列...

  • android数据结构

    基本数据结构:数组、链表、栈、队列栈:LIFO 压栈出栈,只允许在栈顶操作队列:FIFO ,一般只允许队尾插,队首...

  • 数据结构与算法相关

    第二章 数据结构与算法相关 1.常用的数据结构有哪些? 数组、栈、队列、链表(单链表、双向链表、循环链表)、树、散...

  • 数据结构和算法总结

    常用数据结构: 数组,栈,队列,链表(单向链表,双端链表,双向链表),哈希表(hash table),树(二叉树,...

  • 数据结构笔面试总结

    涉及的几个部分数据结构部分数组、栈、链表、队列、树、图 数组 数组是最简单、也是使用最广泛的数据结构。栈、队列等其...

  • 数据结构

    数据结构 数据结构概念 顺序表 链表 队列 栈 二叉树 常用排序算法

  • Java基础-数据结构简单了解

    常用数据结构: 栈,队列,数据,链表,树,哈希表. 什么是数据结构: 数据的组织方式. 各个结构的数据特点: 栈:...

网友评论

    本文标题:数据结构 | 栈-队列-链表

    本文链接:https://www.haomeiwen.com/subject/beboehtx.html