顺序栈-使用顺序栈实现十进制转换二进制(代码片段)

sucker sucker     2022-11-30     582

关键词:

 1 #include"stdio.h"
 2 #define MaxSize 50
 3 typedef int DataType;
 4 typedef struct
 5     DataType elem[MaxSize];
 6     int top;
 7 SeqStack;
 8 void initStack(SeqStack &s)
 9 
10     s.top = -1;
11 
12 int push(SeqStack &s , DataType x)
13 
14     if(s.top == MaxSize -1) return 0;
15     s.elem[++s.top] = x;
16     return 1;
17 
18 int pop(SeqStack &s , DataType &x)
19 
20     if(s.top == -1) return 0;
21     x = s.elem[s.top--];
22     return 1;
23 
24 main()
25 
26     int x;
27     int n;
28     int r;
29     SeqStack s;
30     initStack(s);
31     scanf("%d",&n);
32     r = n%2;
33     while(n!=0 &&push(s , r))
34     
35         n = n/2;
36         r = n%2;
37     
38     while(pop(s , x))
39     
40         printf("%d",x);
41     
42 

 

用顺序栈实现十进制向二进制转化(代码片段)

...ck*)malloc(sizeof(SeqStack));S->top=-1;inti;printf("请输入一个十进制数:");scanf("%d",&i);while(i!=0)S->data[++S->top]=i%2;i/=2;printf("二进制为:");while(S->top!=-1)printf("%d",S->data[S->top--]); 查看详情

利用栈实现进制转换(代码片段)

#include<stdio.h>#include<malloc.h>#defineMAX_STACK_SIZE10//静态栈向量大小#defineERROR0#defineOK1typedefintElemType;typedefintStatus;/栈的应用:进制转换/typedefstructsqstackElemTypestack_array[MAX_STACK_ 查看详情

c++实现双栈结构(一个顺序表中使用两个栈)(代码片段)

...数据不会太多,为了节约空间,所以可以在一个顺序表中使用两个栈结构图:在这里我会留一个空间用来判断栈是否满!#include<iostream>usingnamespacestd;typedefintElemType;classDoubleStackprivate: ElemType*top_1; ElemType*bas 查看详情

进制转换问题(代码片段)

建立顺序栈或链栈,编写程序实现十进制数到二进制数的转换。输入输入只有一行,就是十进制整数。输出转换后的二进制数。样例输入10样例输出1010#include<iostream>#include<stdlib.h>#defineMax_Size100#defineSTACKINCRMENT10usingnamespace... 查看详情

java实现栈(顺序栈,链栈)(代码片段)

顺序栈:packageSeqStack;publicclassStackprivateinttop;privateintbase[];privateintstackSize;publicStack()stackSize=100;base=newint[stackSize];top=-1;publicStack(intn)stackSize=n; 查看详情

数据结构学习笔记——顺序存储结构实现栈(代码片段)

目录一、栈的相关知识二、顺序栈的定义三、顺序栈的初始化四、判断顺序栈是否为空栈五、判断顺序栈是否为满栈六、进栈(插入操作)七、出栈(删除操作)八、读取顺序栈顶元素九、顺序栈的建立一个简单... 查看详情

顺序栈的实现-1(代码片段)

1#defineMax502#defineElemTypeint3#defineOK14usingnamespacestd;56typedefstructStack//顺序栈的定义78intdata[Max];9inttop;10Stack;1112voidStackInit(Stack&s)//顺序栈的初始化1314s.top=-1;151617boolStackEmpty(St 查看详情

顺序栈(代码片段)

顺序栈顺序栈定义用顺序存储结构实现的栈,即利用一组地址连续的存储单元依次存放自栈底到栈顶的数据元素,同时由于栈的操作的特殊性,还必须附设一个栈顶指针(top)来动态的指示栈顶元素在顺序栈中的位置。通常以top... 查看详情

数据结构与算法学习笔记栈和队列ⅰ(代码片段)

...示和操作的实现1.栈的抽象数据类型定义基本操作概述2.顺序栈的表示和实现顺序表的初始化判断栈是否为空求顺序栈的长度清空顺 查看详情

顺序栈链栈双端栈(代码片段)

...称为后进先出表(LastInFirstOut,简称LIFO)。栈的存储结构一:顺序存储    栈的顺序存储结构同样需要使用一个数组和一个整型变量来实现,利用数组来顺序存储栈中的所有元素,利用整型变量来存储栈顶元 查看详情

n日一篇——java实现栈(代码片段)

..._34028001/article/details/119331089?spm=1001.2014.3001.5501目录一、顺序栈1.1用接口表示顺序栈抽象数据类型1.2带头结点的顺序栈实现1.3不带头结点的顺序表实现1.4测试带头结点与不带头结点的顺序栈 二、链栈2.1用接口表示链栈抽象数据... 查看详情

n日一篇——java实现栈(代码片段)

...—栈和队列_从零开始的智障生活的博客-CSDN博客目录一、顺序栈1.1用接口表示顺序栈抽象数据类型1.2带头结点的顺序栈实现1.3不带头结点的顺序表实现1.4测试带头结点与不带头结点的顺序栈 二、链栈2.1用接口表示链栈抽象数据... 查看详情

顺序栈操作的实现(最详细)(代码片段)

#define_CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<iostream>usingnamespacestd;#defineMAXSIZE100typedefstructSqStack int*base; int*top; intstacksize;SqStack;//初始化栈voidStackInit(SqSta 查看详情

数据结构与算法栈与队列c语言版(代码片段)

...3.2栈、队列与一般线性表的区别3.3栈的表示和操作的实现顺序栈与顺序表=================顺序栈的表示顺序栈初始化判断顺序栈是否为空求顺序栈的长度清空顺序栈销毁顺序栈顺... 查看详情

数据结构学习笔记——栈的基本知识和顺序存储结构实现栈(顺序栈)(代码片段)

...列(三)共享栈(四)栈的常见应用二、顺序栈的定义三、顺序栈的初始化四、判断顺序栈是否为空栈五、判断顺序栈是否为满栈六、进栈(插入操作)七、出栈(删除操作)八、读取顺序栈顶元... 查看详情

考研数据结构与算法栈和队列(代码片段)

文章目录一、栈1.1顺序栈1.1.1顺序栈代码实现1.1.1.1初始化1.1.1.2判栈空1.1.1.3进栈1.1.1.4出栈1.1.1.5读栈顶元素1.2链栈1.2.1链栈的代码实现1.2.1.1初始化1.2.1.2判栈空1.2.1.3进栈1.2.1.4出栈1.2.1.5读取栈顶元素1.3共享栈1.4实际应用1.4.1进制转... 查看详情

汉诺塔(towerofhanoi)递归代码实现c语言(顺序栈实现)(代码片段)

...化版(能看到每一步每个塔的情况)(使用了顺序栈库)main.csequential_stack.cppsequential_stack.h运行结果找了个汉诺塔游戏玩,一开始玩给我整懵逼了,后来玩着玩着才慢慢找到诀窍,但到了高阶(>&#... 查看详情

递归实现迷宫问题(顺序栈)(代码片段)

#include<iostream.h>#defineMaxSize100#defineM8#defineN8intmg[M+2][N+2]=1,1,1,1,1,1,1,1,1,1,1,0,0,1,1,0,0,1,0,1,1,1,0,1,0,1,0,1,0,1,1,0,0,0,0,0,0,0,1,1,1,0,1,1,1,0,1,0,0,1,1,0,1,0,1,1 查看详情