数据结构第一次作业
- 格式:doc
- 大小:222.00 KB
- 文档页数:13
18秋《数据结构》作业_1一、单选题 ( 每题4分, 共23道小题, 总分值92分 )1.答案:B作业代做QQ:805009261 成绩保证95分以上,基本满分!2.答案:B3.答案:D4.答案:D5.与单链表相比,双链表的优点之一是___。
A. 插入、删除操作更简单B. 可以进行随机访问C. 可以省略表头指针或表尾指针D. 顺序访问相邻结点更灵活答案:D6.数据结构在计算机内存中的表示是指___。
A. 数据的存储结构B. 数据结构C. 数据的逻辑结构D. 数据元素之间的关系7.快速排序在下列情况下最易发挥其长处的是()。
A. 被排序的数据中含有多个相同排序码B. 被排序的数据已基本有序C. 被排序的数据完全无序D. 被排序的数据中的最大值和最小值相差悬殊8.A. (A)B. (B)C. (C)D. (D)9.链式栈与顺序栈相比,一个比较明显的优点是()。
A. 插入操作更加方便B. 通常不会出现栈满的情况C. 不会出现栈空的情况D. 删除操作更加方便10.11.12.13.有一个有序表{1,3,9,12,32,41,45,62,75,77,82,95,100},当折半查找值为82的结点时,___次比较后查找成功。
A. 11B. 5C. 4D. 814.设哈夫曼树中的叶子结点总数为m,若用二叉链表作为存储结构,则该哈夫曼树中总共有___个空指针域。
A. 2m-1B. 2mC. 2m+1D. 4m15.A. (A)B. (B)C. (C)D. (D)16.A. (A)B. (B)C. (C)D. (D)17.A. (A)B. (B)C. (C)D. (D)18.下述哪一条是顺序存储结构的优点___。
A. 插入运算方便B. 可方便地用于各种逻辑结构的存储表示C. 存储密度大D. 删除运算方便19.设某棵二叉树中有2000个结点,则该二叉树的最小高度为___。
A. 9B. 10C. 11D. 1220.设一组初始记录关键字序列为(345,253,674,924,627),则用基数排序需要进行___趟的分配和回收才能使得初始关键字序列变成有序序列。
数据结构第一次作业数据结构第一次作业一.单项选择题(20分)( )1.已知一算术表达式的后缀形式为ABC *+DE-/,则其中缀形式为 _________。
a、(A+B *C)/(D-E)b、A+B*C /D-Ec、(A+B*C)/D-Ed、A+B*C/(D-E)( )2.若某链表中最常用的操作是在最后一个结点之后插入一个结点和删除第一个结点,则采用________存储方式最节省运算时间(假设链表仅设有一个first指针)。
a. 单链表b. 带头结点的双循环链表c. 单循环链表d. 双链表( )3.设一个栈的输入序列为A,B,C,D,则所得到的输出序列不可能是_______。
a. A,B,C,Db. D,C,B,Ac. A,C,D,Bd. D,A,B,C( )4.若线性表最常用的操作是存取第i个元素及其直接前驱的值,则采用_____存储方式节省时间。
a.顺序表 b.双链表 c.单循环链表 d.单链表( )5.若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素的算法的时间复杂度为_______。
(1≤i≤n+1)a、O(0)b、O(1)c、O(n)d、O(n2)( )6.若指针L指向一带头结点的循环单链表的头结点,该表为空表的条件是_______为真值;a. !( L -> link );b. L == (L -> link) -> link;c. L -> link;d. L == L -> link;( )7.用数组A[0..N-1]存放一个循环队列,一元素出队时,其队头指针front的修改方法是________:a. front = (front + 1) mod N;b. front = (front - 2)mod N;c. front = front + 1;d. front = front – 2;( )8.若用Head()和Tail()分别表示取广义表的表头和表尾,广义表A=(1,2,(3,4),(5,(6,7))),则Head(Tail(Head(Tail(Tail(A))))) 。
数据结构课程平时作业1一. 单项选择题1. 数据结构是一门研究非数值计算的程序设计问题中计算机的①以及它们之间的②和运算等的学科。
①A. 操作对象 B. 计算方法 C. 逻辑存储 D. 数据映象②A. 结构 B. 关系 C. 运算 D. 算法2.数据结构被形式地定义为(K, R), 其中K是①的有限集合, R是K上的②的有限集合。
①A. 算法 B. 数据元素 C. 数据操作 D. 逻辑结构3.②A. 操作 B. 映象 C. 存储 D. 关系A.在数据结构中, 从逻辑上可以把数据结构分成( )。
动态结构和静态结构 B. 紧凑结构和非紧凑结构C. 线性结构和非线性结构D. 内部结构和外部结构4.线性结构是数据元素之间存在一种:A)一对多关系B)多对多关系C)多对一关系D)一对一关系5.数据结构中, 与所使用的计算机无关的是数据的结构;A) 存储B) 物理C) 逻辑D) 物理和存储二.填空题(将正确的答案填在相应的空中)1. 在线性结构中, 第一个结点①前驱结点, 其余每个结点有且只有②个前驱结点;最后一个结点③后续结点, 其余每个结点有且只有④个后续结点。
2. 在树形结构中, 树根结点没有①结点, 其余每个结点有且只有②个前驱结点;叶子结点没有③结点, 其余每个结点的后续结点可以④。
3. 在图形结构中, 每个结点的前驱结点数和后续结点数可以①。
4.线性结构中元素之间存在①关系, 树形结构中元素之间存在②关系, 图形结构中元素之间存在③关系。
5.数据结构包括数据的、数据的和数据的这三个方面的内容。
6. 下面程序段的时间复杂度是①。
for(i=0;i<n;i++)for(j=0;j<m;j++)A[i][j]=0;7. 下面程序段的时间复杂度是①。
S=0;for(i=0;i<n;i++)for(j=0; j<n; j++)s+=b[i][j];sum=s;三、简答题1.数据结构是一门研究什么内容的学科?2.数据元素之间的关系在计算机中有几种表示方法?各有什么特点?3.设有数据逻辑结构S=(D,R), 试按题所给条件画出这些逻辑结构的图示, 并确定相对于关系R, 哪些结点是开始结点, 哪些结点是终端结点?D={d1,d2,d3,d4}R={(d1,d2),(d2,d3),(d3,d4) }部分参考答案一、单选题二、A B 2. B D 3. C 4. D 5. C三、填空题1.无, 1, 无, 12.前驱, 1个, 后继, 多个3.多个4.一对一, 一对多, 多对多5.逻辑结构、物理结构、数据运算6. O(n*m)7. O(n*n)三、简答题1.略见课件2.略3. d1( d2(d3(d4 线性结构数据结构课程平时作业2一. 单项选择题1.线性表L=(a1, a2,…,a n),下列说法正确的是()。
数据结构第一次作业一、单选题 (共100.00分)1. 已知栈S为空,数据1、2、3、4依次逐个进入栈S,则栈顶数据为()A. 1B. 2C. 3D. 4正确答案:D2. 栈的最大特点是()A. 先进先出B. 后进先出C. 无限递归D. 有限递归正确答案:B3. 队列的最大特点是()A. 先进先出B. 后进先出C. 无限递归D. 有限递归正确答案:A4. 已知栈包含10元素,其中存放在栈底是第1号元素,则第10号元素可以通过()进行访问A. 栈底B. 栈中C. 栈尾D. 栈顶正确答案:D5. 以下结构中,哪一个是属于物理结构()A. 栈B. 队列C. 链队列D. 线性表正确答案:C6. 使用长度为10的数组实现循环队列,则该队列最多存储数据个数为()A. 1B. 9C. 11.D.5正确答案:B7. 已知顺序表包含1000个数据,现在第88号位置插入新的数据,需要移动的数据个数为()A. 88B. 87C. 912D. 913正确答案:D8. 若线性表最常用的操作是存取第i个元素及其后继的值,则最节省操作时间的存储结构是()A. 单链表B. 双链表C. 单循环链表D. 顺序表正确答案:D9. 以下结构中,哪一个是属于物理结构()A. 线性表B. 栈C. 单链表D. 队列正确答案:C10. 已知顺序表包含100个数据,现在要删除第99号位置的数据,需要移动的数据个数为()A. 99B. 100C. 1D. 2正确答案:C已知指针p指向单链表L的某个结点,判断p指向的结点是尾结点的条件是()A. if (p->next>p)B. if (p->next==NULL)D. if (p->data==0)正确答案:B12. 以下描述哪个是正确的()A. 线性表的数据元素的存储位置一定是连续的B. 顺序表的数据元素的存储位置一定是连续的C. 链表的数据元素的存储位置一定不是连续的D. 线性表的数据元素的存储位置一定不是连续的正确答案:B已知顺序表包含100个数据,先在第15号位置插入1个新数据,接着删除第3号位置的数据,需要移动的数据总个数为()A. 18B. 84C. 184D. 188正确答案:C在数据结构概念中,数据的基本单位是()A. 数据段B. 数据项C. 数据表D. 数据元素D在数据结构概念中,结构是描述()A. 数据项的类型B. 数据元素之间的关系C. 数据成员的先后顺序D. 数据对象的取值范围正确答案:B在算法设计中,要求算法便于理解和修改是属于算法要求的()A. 正确性B. 可读性C. 健壮性D. 效率高正确答案:B以下关于算法的描述,哪个是正确的()A. 算法可以没有输入B. 算法可以包含无限个执行步骤C. 算法可以没有输出D. 算法的每个步骤允许带有歧义的正确答案:抽象数据类型ADT通过三方面描述,包括数据关系、数据操作和()A. 数据对象B. 数据来源C. 数据范围D. 数据判断正确答案:A设n为问题规模,以下程序的时间复杂度为()for (i=1; i<=10000; i++) for (j=1; j<=n; j++) a = a + 1;A. O(1)B. O(n)C. O(10000n)D. O(n2)正确答案:B20.设n为问题规模,以下程序的时间复杂度为() for (i=1; i< POW(2, n); i++) //POW(x, y)函数表示x的y次幂a = a+100;A. O(n)B. O(2n)C. O(n!)D. O(2n)正确答案:D。
第一次作业1.数据库系统管理员DBA的职责是什么?与一般的数据库用户有什么不同?答:1)数据库管理员DBA的职责是:安装数据库系统;管理数据库和事务日志;启动、暂停、停止数据库服务;监控数据库的运行状况;备份和恢复数据库和事务日志;调整数据库系统的性能;建立并使用数据复制;保证数据库的安全性。
2)一般数据库用户是通过数据库系统索提供的各种程序工具使用和操作数据库中数据的用户。
每一个数据库用户都建立、授权、登录的步骤,建立了与数据库服务的连接之后,才能使用数据库。
数据库管理员负责安装、运行、维护及管理,一般数据库用户只是使用,对系统不能主动改变任何一点,这是二者主要的区别。
2.数据库管理系统(DBMS)的基本功能是什么?答:数据库管理系统(DBMS)的基本功能如下:1)数据的并发控制:多个用户可以同时存取数据库中的数据,也可以同时存取数据库中的同一数据。
2)数据的安全性保护:由于数据库中的数据是面向系统的,所以数据库中的数据是非常重要的,并不是任何人都可以进行统计查询、插入、修改、删除等处理。
3)数据的完整性检查:这保证数据的正确性、有效性和相容性,例如在出生年月上部允许出现02月30日。
4)数据库恢复:计算机的硬件、软件故障以及操作失误都会影响数据的正确,甚至造成数据库部分和全部的丢失。
DBMS必须具有把数据库从故障状态中恢复道正确的功能,这就是数据库的恢复。
3.简述关系模型的基本内容?答:关系模型使用二维表结构描述客观世界实体及其联系。
主要内容包括:1)关系数据结构:在关系模型中,信息被组织成一些二维表的结构,每一张二维表是一个关系或者表。
每一张表描述一个现实生活中的一件事情。
2)关系数据操作:任何DBMS都要求从数据库系统中存取数据的一组操作。
关系模型中有8种基本操作,这8种操作组合出所有的操作要求,8种基本操作是选择操作、投影操作、连接操作、并运操作、交运算、差运算、笛卡儿积运算、除运算3)关系数据的完整性:在关系数据库种,数据有两类基本的完整性,一是实体完整性、二参照完整性。
第一次作业------------线性表题目1、下列图1单链表执行R->data=P->next->data语句后,P->next->data值为A. 5B. 7C. 2D. 3题目2、在顺序表中,只要知道( ),就可在相同时间内求出任一结点的存储地址。
A. 向量大小B. 基地址和结点大小C. 结点大小D. 基地址题目3、非空的循环单链表head的尾节点(由r所指向)满足( )A. r->next=NULLB. r->next=headC. r=NULLD. r=head题目4、设线性表(a1,a2,a3···an)按顺序存储,且每个元素占有m个存储单元,则元素ai 的地址为A. LOC(a1) + i×m ,其中LOC(a1)表示元素a1的地址B. 元素ai的地址无法计算C. LOC(a1) + (i-1)×m,D. LOC(a1) + (i-2)×m题目5、在()运算中,使用顺序表比链表好。
A. 根据元素值查找B. 插入C. 根据序号查找D. 删除题目6、在一个单链表中,若P所指结点不是最后结点,在P之后插入S所指结点A. P→next=S;S→next=PB. S→next=P→next; P=SC. S→next=P→next;P→next=SD. S→next=P;P→next=S题目7、在双向循环链表的*p结点之后插入*s结点的操作是A. s->prior=p; s->next=p->next; p->next=s; p->next->prior=s;B. s->prior=p; s->next=p->next; p->next->prior=s; p->next=s;C. p->next=s; s->prior=p; p->next->prior=s; s->next=p->nextD. p->next=s; p->next->prior=s; s->prior=p; s->next=p->next题目8、单链表表示的整数数列如下图,值P->next->next->data为:A. 47B. 93C. 19D. 64题目9、在一个具有n个结点的有序单链表中插入一个新结点并仍然有序的时间复杂度是( )。
《数据结构》形成性考核册第1次作业参考答案第一章绪论一、填空题1、数据操作2、集合结构线性结构树型结构图形结构3、引用类型4、1:1 1:n n:m5、不对6、多个7、O(m*n)8、时间复杂度空间复杂度9、顺序链接索引散列10、O(n2)11、O(n)12、O(n)O(m*n)二、选择题1~8:DBABADDD三、应用题(1)功能:判断n是否是一个素数,若是则返回数值1,否则返回0。
时间复杂度:O(n)。
(2)功能:计算S=1!+2!+…+n!的值。
时间复杂度:O(n)。
(3)功能:计算S=1!+2!+…+n!的值。
时间复杂度:O(n2)。
(4)求出满足不等式1+2+…+i≥n的最小i值。
O(n)。
第二章线性表四、填空题1、A[P-1]2、1083、前驱后继4、最后一个表头5、p->next=q->nextq->next=p6、HL->next=NULLHL->next=HL7、P->next8、Q->next9、P->next s10、从前向后前移n-i11、O(1)O(n)12、(n+1)/213、O(n)O(1)14、A[P].next15、a[j].next=a[i].nexta[i].next=j16、数据值指针五、选择题1~5:BDDBC六、应用题1、(1)、(79,62,34,57,26,48)(2)、(26,34,48,57,62,79)(3)、(48,56,57,62,79,34)(4)、(56,57,79,34)(5)、(26,34,39,48,57,62)2、(1)将类型为List的线性表L中第i个元素移至表尾位置的算法,L中的元素类型为ElemType,假定不需要对i的值进行有效性检查。
void move (List& L, int i){ElemType x=L.list[ i-1];for(int j=i; j<L.size; j++)L.list[ j-1]=L.list[ j ];L.list[L.size-1]=x;}·将线性表L中的第i个元素移入表头的算法与上类似。
弘成无锡数字化学习中心批次层次:专升本专业:计算机科学与技术姓名:刘鹏亮学号:第一次作业三、主观题(共3道小题)14.数据的物理结构包括的表示和的表示。
参考答案:线性结构,非线性结构15.数据逻辑结构包括、、和四种,树结构和图结构统称为。
参考答案:集合、线性结构、树、图、非线性结构16.数据结构研究的是和以及它们之间的相互关系,并对于这种结构定义相应的,设计出相应的。
参考答案:逻辑结构,物理结构,运算,算法第二次作业三、主观题(共22道小题)24.向一个长度为n的顺序表中的第i个元素之前插入一个元素时,需要向后移动个元素。
参考答案:n-i+125.在一个长度为n的顺序表中删除第i个元素时,需要向前移动元素。
参考答案:n-i26.在单链表中设置头结点的作用是。
参考答案:简单插入、删除算法27.在单链中要删除某一指定结点,必须找到该结点的结点。
参考答案:直接前驱28.访问单链表中的结点,必须沿着依次进行。
参考答案:指针域29.在双链表中每个结点有两个指针域,一个指向,一个指向。
参考答案:直接前驱结点,直接后继结点30.在链表中,删除最后一个结点的算法时间复杂度为O(1)。
参考答案:双向循环31.访问一个线性表中具有给定值的时间复杂度的数量级是。
参考答案:O(n)32.由n个数据元素生成一个顺序表,若每次都调用插入算法把一个元素插入到表头,则整个算法的时间复杂度插入算法把一个元素插入到表尾,则整个算法的时间复杂度为。
参考答案:O(n) , O(n2)33.在链表中,可以用表尾指针代替表头指针。
参考答案:双向34.在链表中,可以用表尾指针代替表头指针。
参考答案:双向35.根据n个数据元素建立对应的顺序表和单链表存储结构,其算法的时间复杂度最好的情况是,最是。
参考答案:O(n) ,O(n2)36.求线性表的顺序存储和链式存储的长度的算法时间复杂度分别是和。
参考答案:O(1) , O(n)37.在一个带头结点的单链表中,在表头插入或删除与在其他位置插入或删除,其操作过程是否相同?参考答案:相同38.在一个不带头结点的单链表中,在表头插入或删除与在其他位置插入或删除,其操作过程是否相同?。
#include<iostream>#include<ctype.h>using namespace std;typedef struct node{int data;struct node *next;}Lnode, *LinkList;void CreatList(LinkList h, int a[], int n) {LinkList s, r;int i;r=h;for(i=0; i<n; i++){s = new Lnode;s->data = a[i];r->next = s;r=s;}r->next = NULL;}void DispList(LinkList h)LinkList r = h->next;while(r != NULL){printf("%d ",r->data);r = r->next;}putchar('\n');}void InsertList(LinkList h, int x, int y){LinkList s, p, q;s = new Lnode;s->data = y;q = h; p = q->next;while((p!=NULL) && (p->data != x)){q = p;p = p->next;}s->next = p;q->next = s;}void DeleteList(LinkList h, int x){LinkList p, q;q = h;p = q->next;while((p != NULL) && (p->data != x)){q = p;p = p->next;}if(p == NULL) printf("no");else{q->next = p->next;delete(p);printf("yes");}}void Countnode(LinkList h, int &j){LinkList r;r = h->next;while(r != NULL) {j++; r = r->next; }}int main(){int i, a[100]={0}, x, y, n, j=0;char p;LinkList h;h = new Lnode;h->next = NULL;printf("主菜单\n");printf("1.创建单链表\n");printf("2.结点的插入\n");printf("3.结点的删除\n");printf("4.统计结点个数\n");printf("5.退出系统\n");printf("输入单链表的元素个数是n, n<=100 \n");scanf("%d",&n);printf("请输入元素:\n");for(i = 0; i < n; i++){scanf("%d",&a[i]);}do{printf("请输入选择p(1-5)\n");scanf(" %c",&p);switch(p){case '1':CreatList(h, a, n); DispList(h);break;case '2':printf("在x的结点之前插入值y的结点,请输入x, y\n");scanf("%d%d",&x,&y);InsertList(h, x, y);DispList(h);break;case '3':printf("删除值为x的结点,请输入x\n");scanf("%d",&x);DeleteList(h, x);DispList(h);break;case '4':printf("统计结点个数\n");Countnode(h,j);printf("结点个数为%d\n",j);break;case '5':printf("退出系统\n");break;default:printf("选择错误! 请重新选择p(1-5)\n") ;p='0';}}while(p < '5');return 0;}#include <iostream>using namespace std;#define MaxSize 100#define NULL 0typedef struct sqlist{char data[MaxSize];int length;}SqList;void InitList(SqList *&l){l=new SqList;l->length=0;}void CreatList(SqList *l,char a[],int n) {int i;for(i=0;i<n;i++)l->data[i]=a[i];l->length=n;}int ListEmpty(SqList *l){return(l->length==0);}void DispList(SqList *l){int i;if(ListEmpty(l)) return;for(i=0;i<l->length;i++)cout<<l->data[i]<<' ';cout<<endl;}int GetElem(SqList *l,int i,int &m){if(i<1||i>l->length)return 0;m=l->data[i-1];return 1;}int LocateElem(SqList *l,int k){int i=0;while((i<l->length)&&(l->data[i]!=k)) i++;if(i>=l->length)return 0;else return i+1;}void DestroyList(SqList *&l){delete(l);}void main(){SqList *A=NULL, *B=NULL;int num,i,j,e,k,v, xx=0;char a[100], b[100], c[100];InitList(A);InitList(B);cout<<"how many elements in A?"<<endl; cin>>num;cout<<"input A:"<<endl;for(i=0;i<num;i++)cin>>a[i];CreatList( A,a,num);cout<<"how many elements in B?"<<endl; cin>>k;cout<<"input B:"<<endl;for(i=0;i<k;i++)cin>>b[i];CreatList( B,b,k);cout<<"*************************"<<endl; cout<<"A is:"<<endl;DispList(A);cout<<endl;cout<<"B is:"<<endl;DispList(B);cout<<endl;cout<<"A - B is:"<<endl;for(i=0;i<num;i++){for(j=0;j<k;j++){if(A->data[i]==B->data[j])break;}if(j==k)cout<<(c[xx++]=A->data[i])<<' ';}cout<<endl<<endl;cout<<"B - A is:"<<endl;for(i=0;i<k;i++){for(j=0;j<num;j++){if(B->data[i]==A->data[j])break;}if(j==num)cout<<(c[xx++]=B->data[i])<<' ';}cout<<endl<<endl;cout<<"A - B |_| B - A:"<<endl; for(i=0; i<xx;i++)cout<<c[i]<<' '; DestroyList(A);DestroyList(B);cout<<endl;}#include <iostream>using namespace std;typedef struct sqnode{int data;struct sqnode *next;}ListStack;void InitStack(ListStack *&s) {s=new ListStack;s->next = NULL;s->data = 0;}int EmptyStack( ListStack *s) {return(s->next== NULL);}void Push(ListStack *s,int e){ListStack *p = new ListStack;p->data = e;p->next = s->next;s->next = p;}void GetTop(ListStack *s,int &e) {if (EmptyStack(s))cout<<"栈空!"<<endl;elsee=s->next->data;}void Pop(ListStack *s,int &e) { if (EmptyStack(s))cout<<"栈空"<<endl;else{ListStack *p = s->next;e = p->data;s->next = p->next;delete p;}}void DispStack(ListStack *s){if(EmptyStack(s))cout<<"Stack is empty!"<<endl; else{ListStack *p = s->next;cout<<"Stack is:"<<endl;while(p != NULL)cout<<p->data<<' ';cout<<endl;}}int main(){ListStack *s = NULL;int a, i, num;InitStack( s);cout<<"栈数:"<<endl;cin>>num;cout<<"进栈值:"<<endl;for(i=0;i<num;i++){cin>>a;Push(s, a);}cout<<"栈顶:";cout<<(GetTop(s,a), a)<<endl;cout<<"出栈:"<<endl;while(--num>=0){cout<<(Pop(s,a),a)<<' ';}return 0;}#include <iostream>using namespace std;#define MaxSize 50#define Null 0typedef struct sqstack{char data[MaxSize];int top;}SqStack;void InitStack(SqStack *&s) {s=new SqStack;s->top=-1;}int EmptyStack( SqStack *s) {return(s->top== -1);}int FullStack(SqStack *s){return(s->top== MaxSize-1);}void Push(SqStack *s,char e) { if (FullStack(s)) return ;s->top++;s->data[s->top]=e;return ;}void GetTop(SqStack *s,char &e) { if (EmptyStack(s))return ;e=s->data[s->top];return ;}char Pop(SqStack *s){ char e;if (EmptyStack(s))return 0;e=s->data[ s->top];s->top--;return e;}void DispStack(SqStack *s){int i;if(EmptyStack(s))cout<<"Stack is empty!"<<endl; else{cout<<"Stack is:"<<endl;for(i=0;i<=s->top;i++)cout<<s->data[i]<<' ';cout<<endl;}}void main(){SqStack *s=NULL;char y, x;InitStack(s);cout<<"Pleast input:"<<endl;while(x=getchar(), x!=EOF){if(x=='#'){Pop(s);}else if(x=='@'){while(GetTop(s, y),y!='\n' ){Pop(s);}}else{Push(s,x);}}DispStack(s);}。