数据结构之线性表栈队列(代码片段)

triw triw     2023-02-02     308

关键词:

温故而知新~~~~

一、线性表

顺序表实现(C++)

 1 template<typename E>
 2 class AList 
 3 
 4 private:
 5     int maxSize;
 6     int listSize;
 7     int curr;
 8     E* listArray;
 9 public:
10     AList(int size = defaultSize)
11     
12         maxSize = size;
13         listSize = curr = 0;
14         listArray = new E[maxSize];
15     
16     ~AList()  delete[] listArray; 
17     void clear()
18     
19         delete[] listArray;
20         listSize = curr = 0;
21         listArray = new E[maxSize];
22     
23     void insert(const E& it)
24     
25         Assert(listSize < maxSize, "exceed");
26         for (int i = listSize; i > curr; i--)
27             listArray[i] = listArray[i - 1];
28         listArray[curr] = it;
29         listSize++;
30     
31     void append(const &E it)
32     
33         Assert(listSize < maxSize, "exceeded");
34         listArray[listSize++] = it;
35     
36     E remove()
37     
38         Assert((curr >= 0) && (curr < listSize), "GG");
39         E it = listArray[curr];
40         for (int i = curr; curr < listArray - 1; i++)
41             listArray[i] = listArray[i + 1];
42         listSize--;
43         return it;
44     
45     void moveToStart()  curr = 0; 
46     void moveToEnd()  curr = listSize; 
47     void prev()  if (curr != 0)curr--; 
48     void next()  if (curr < listSize)curr++; 
49 
50     int length()const  return listSize; 
51     int currPos const
52     
53         return curr; 
54     
55     void moveToPos(int os)
56     
57         Assert((pos >= 0) && (pos <= listSize), "GG");
58         curr = pos;
59     
60 
61     const E& getValue() const
62     
63         Assert((curr >= 0) && (curr < listSize), "GG");
64         return listArray[curr];
65     
66 ;

 

[datastructure]线性数据结构之稀疏数组链表栈和队列java代码实现

线性数据结构线性结构指的是数据元素之间存在着“一对一”的线性关系的数据结构。相对应于线性结构,非线性结构的逻辑特征是一个结点元素可能对应多个直接前驱和多个后继。线性数据结构具有以下特征:1.... 查看详情

[datastructure]线性数据结构之稀疏数组链表栈和队列java代码实现

线性数据结构线性结构指的是数据元素之间存在着“一对一”的线性关系的数据结构。相对应于线性结构,非线性结构的逻辑特征是一个结点元素可能对应多个直接前驱和多个后继。线性数据结构具有以下特征:1.... 查看详情

22计算机408考研—数据结构—线性表栈队列数组(代码片段)

2022计算机考研408—数据结构—线性表、栈、队列、数组手把手教学考研大纲范围内的线性表、栈、队列、数组22考研大纲数据结构要求的是C/C++,笔者以前使用的都是Java,对于C++还很欠缺,如有什么建议... 查看详情

22计算机408考研—数据结构—线性表栈队列数组(代码片段)

2022计算机考研408—数据结构—线性表、栈、队列、数组手把手教学考研大纲范围内的线性表、栈、队列、数组22考研大纲数据结构要求的是C/C++,笔者以前使用的都是Java,对于C++还很欠缺,如有什么建议... 查看详情

顺序表栈与队列(代码片段)

一、顺序表引入1什么是线性表1在程序中,经常需要将一组数据元素作为整体管理和使用,需要创建这种元素组,用变量记录它们,传进传出函数等。2一组数据中包含的元素个数可能发生变化(增加或删除元素)。3对于这种需... 查看详情

22计算机408考研—数据结构—线性表栈队列数组(代码片段)

2022计算机考研408—数据结构—线性表、栈、队列、数组手把手教学考研大纲范围内的线性表、栈、队列、数组22考研大纲数据结构要求的是C/C++,笔者以前使用的都是Java,对于C++还很欠缺,如有什么建议... 查看详情

22计算机408考研—数据结构—线性表栈队列数组(代码片段)

2022计算机考研408—数据结构—线性表、栈、队列、数组手把手教学考研大纲范围内的线性表、栈、队列、数组22考研大纲数据结构要求的是C/C++,笔者以前使用的都是Java,对于C++还很欠缺,如有什么建议... 查看详情

第二章之线性表栈队列和线性表

线性表的存储结构(主要有两种):1、定长的顺序存储结构,也称顺序表或向量型的一维数组结构。数据结点之间的逻辑关系是通过数据结点的存储位置来反映的。2、边长的线性结构存储结构、大多实现为链接式存储结构。数... 查看详情

数据结构--栈队列树(代码片段)

文章目录线性表栈队列二叉树线性表线性表是一种可以在任意位置进行插入和删除数据元素操作的、由n(n>=0)个相同类型数据元素a0、a1、a2,…,a(n-1)组成的线性结构。线性表是一种最简单的线性结构。特点:除... 查看详情

线性表栈和队列

一、线性表(list)1、定义:有序、有限的数据序列,其中的每个数据称为元素(element)。  注:在这里本文中所指的元素的数据类型相同。2、基本概念:空(empty)、长度(length)、头(head)、尾(tail)、有序表(sortedlist... 查看详情

表栈和队列(代码片段)

目录1、抽象数据类型2、表ADT2.1、表的简单数组实现2.2、简单链表3、JavaCollectionsAPI中的表3.1、Collection接口3.2、Iterator接口3.3、List接口、ArrayList类和LinkedList类3.4、例子:remove方法对LinkedList类的应用3.5、关于ListInterator本系列讨论... 查看详情

数据结构之栈和队列熬夜暴肝,有亿点详细(代码片段)

...去看看我上次写的线性表相信对你能有帮助。传送门->数据结构之线性表目录前言栈栈的定义顺序栈链栈队列队列的定义顺序队列循环队列链式队列栈与队列的应用双端队列栈的应用表达式求值括号匹配递归结语栈栈其实就是... 查看详情

3)数据结构之线性表(栈与队列)(代码片段)

目录栈与队列的本质栈的基本概念栈的物理结构栈的顺序存储结构(用数组实现)静态栈的实现: Stack.h中Test/c中Stack.c中输出结果动态栈的实现 Stac.h中Test.c中Stack.c中栈的链式存储结构(使用链表实现) Stack... 查看详情

考研数据结构模板:顺序表链表栈队列(代码片段)

考研数据结构模板:顺序表、链表、栈、队列考研数据结构模板:顺序表、链表、栈、队列前言代码风格偏向于考研风格而非算法竞赛风格。代码实现参考《2024数据结构王道复习指导》。注释详细、保证看懂。下面是已实现的... 查看详情

java中的单链表栈队列三种数据结构(代码片段)

一、单链表1、在我们数据结构中,单链表非常重要。它里面的数据元素是以结点为单位,每个结点是由数据元素的数据和下一个结点的地址组成,在java集合框架里面 LinkedList、HashMap(数组加链表)等等的底... 查看详情

数据结构之队列和栈(代码片段)

No.1抽象数据类型栈的定义栈是限定在队尾进行操作的线性表,因此对于栈来说,队尾有特殊意义,称为栈顶,表头端成为栈底,没有任何元素的栈称为空栈特点:它是线性表这个线性表只能在栈顶操作No.2栈的表示栈的先进后出... 查看详情

数据结构之队列(代码片段)

队列就是先进先出(fifo),就像排队。栈只支持两个基本操作:入栈push()和出栈pop()队列跟栈非常相似,支持的操作也很有限,最基本的操作也是两个:入队enqueue(),放队列尾部;出队dequeue(),从队列头部取一个元素。所以队列... 查看详情

数据结构之队列(代码片段)

3数据结构之队列3.1什么是队列Queue也是一种线性结构,相比数组,队列的操作是数组的子集。只能从队尾添加元素,从队首取出元素。和生活中的排队是一样的,先到先得。  LinkedList类实现了Queue接口,因此我们可以把Lin... 查看详情