当前位置: 首页 > news >正文

int域名网站有哪些腾讯会议多少钱一个月

int域名网站有哪些,腾讯会议多少钱一个月,做一网站要什么软件,南京江宁网站制作1、栈的定义和相关基本概念? 限定运算在线性表尾进行的线性表 允许插入、删除的返一端称为栈顶另一个固定端称为栈底。当表中没有元素时称为空栈定义仅是在线性表上规定了操作点,操作受限的、线性的后进先出线性表LIFO 2、对于栈,常做的基本运算有哪些&a…

1、栈的定义和相关基本概念?

限定运算在线性表尾进行的线性表

允许插入、删除的返一端称为栈顶另一个固定端称为栈底。当表中没有元素时称为空栈定义仅是在线性表上规定了操作点,操作受限的、线性的后进先出线性表LIFO

2、对于栈,常做的基本运算有哪些?

1)栈初始化InitStack(s)  S不存在,构造一个空栈

2)销毁栈 DstoryStack(&s)  S存在,将S销毁

3)清为空栈 ClearStack(&s) S存在,将S清空

4)判栈空 StackEmpty(s)    S己存在,若S为空栈返回TRUE,否则返回FALSE

5)清空栈 Stacklength(s)   S存在,返回S的元素个数

6)读栈顶元素 GeTStack(s&e)  S存在且非窄,返回栈顶元素e

7)入栈 Push(&se)        S己存在,在S顶部插入新栈元X

8)出栈 Pop(&s&e)        S存在且非空,删除栈S顶元,用e返回其值

9)遍历栈 StackTraverse(svisit())  依次对栈调用visit()

3、栈的顺序存储结构的定义。

#define  STACK_INIT_SIZE   100

#define  STACKINCREMENT  10

typedef   struct {                                          

    SElemType   *base;

    SElemType   *top ;

} sqstack;

image.png 

说明

top指向栈顶元素的下一个位置,即待接收数据的位置

top= base 空栈

top=base+stacksize  栈满  补添存储

由于栈是运算受限的线性表,因此线性表的存储体结构对栈也是适用的,只是操作点不同而己。顺序栈的置空首先建立栈空间,然后初始化栈顶指针。

顺序栈 

约定与类型定义:top的含义

#define  STACK_INIT_SIZE  100// 存储空间的初始分配量

typedef  struct{

ElemType base[100];  // 栈底指针  

int top; // 栈顶指针(栈顶元素的下一个位置)

}SqStack;

4、栈的顺序存储结构及其基本操作的实现。

image.png 

约定:top指向栈顶元素的下一个位置

顺序栈的初始化 首先建立栈空间,然后初始化栈顶指针。

status InitStack(SqStack &s )  {

  s.base=(SElemtype*)malloc(STACK_INIT_SIZE*

                               sizeof(SElemtype));

  if  (!s.base) exit (OVERFLOW)

  s.top=s.base ;

  s.stacksize=STACK-INIT-SIZE ;

  return  Ok;

   } // InitStack

顺序栈的取栈顶元

status GetTop(SqStack s,SElemType &e )  {

   if  (s.top==s.base) return  ERROR;

   e=*(S.top-1);

   return  Ok;

} // GetTop

出栈和取栈顶元,先判栈是否为空,为空时不能操作,否则产生错误。通常栈空作为一种控制转移的条件

顺序栈入栈 

status Push (SqStack &s, SElemType e)  {

    if (s.top-s.base >= s.stacksize) {

    s.base=(SElemType*)realloc(s.base,(s.stacksize

                         +STACKINCREMENT)*sizeof(SElemType));

    if (!s.base) exit (OVERFLOW)

    s.top=s.base+ s.stacksize;

    s.stacksize+= STACKINCREMENT ;

  }

  *s.top++=e ;

  return OK;

} //Push}

对于顺序栈,入栈时先判栈是否满了,栈满时不能入栈; 否则出现空间溢出,引起错误,这种现象称为上溢。

顺序栈出栈

status Pop (SqStack &s, SElemType e)  {

    if (s.top==s.base) return ERROR ;

    e=*--s.top ;

    return OK ;

 } //Pop

顺序栈判空

status StackEmpty(SqStack s )  {

   if (s.top= =s.base)  return  1;

   else  return  0;

}

5、栈与单链表的关系?

单链表仅在一端操作。用链式存储结构实现的栈称为链栈。通常链栈用单链表表示,其结点结构与单链表的结构相同

typedef   struct  Node {

    datatype         data ;

    struct  Node   *next ;

} StackNode, *LinkStack ;

因为栈中的主要运算是在栈顶插入、删除,显然在链表的头部做栈顶是最方便的,而且没有必要象单链表那样为了运算方便附加一个头结点。

 


来源:我是码农,转载请保留出处和链接!

本文链接:http://www.54manong.com/?id=196

'); (window.slotbydup = window.slotbydup || []).push({ id: "u3646208", container: s }); })();
'); (window.slotbydup = window.slotbydup || []).push({ id: "u3646147", container: s }); })();
http://www.lbrq.cn/news/2583055.html

相关文章:

  • wordpress电影站数据下载seo赚钱吗
  • wordpress站点主页恶意点击广告软件
  • 网上购物网站建设网页优化公司
  • dedecms转换wordpressseo研究院
  • 做网站用的军事图片夸克搜索入口
  • 网站改版好吗网站如何优化排名
  • 淄博桓台网站建设方案seo在线诊断工具
  • 深圳西乡做网站茂名seo快速排名外包
  • 网站开发使用软件环境免费seo刷排名
  • 黑龙江网站备案地址友情链接出售
  • 网站导航插件日照网络推广公司
  • 开源网站推广sem竞价推广
  • 做网站需要美工吗百度站长官网
  • 竞价网站制作怎样进入12345的公众号
  • 深圳找网站建设亚马逊跨境电商个人开店
  • 网站建设百度客服电话天津网站制作系统
  • 网站费做进什么科目seo搜索排名优化公司
  • 网站建设管理分工竞价广告点击软件
  • 个人网站备案名称大全成都疫情最新情况
  • 山东网站建设推广关联词有哪些关系
  • 漯河网站建设 千弘网络信息流优化师是什么
  • 网站制作上海市关键词搜索趋势
  • 网站技术有哪些搜索热门关键词
  • 最好的网页设计网站宁波seo在线优化
  • 莱芜有需要制作网站的公司吗免费b站推广网站2022
  • 新加坡的网站域名上海关键词自动排名
  • 河南春辉建设集团官方网站手机百度seo怎么优化
  • 网站设计O2O平台佛山总代理东莞网络推广策略
  • 淮安做网站找哪家公司关键词快速上首页排名
  • 太原网站建设谁家好网络销售怎么样
  • 第12届蓝桥杯Scratch图形化【省赛】初级组 2021年4月24日
  • io_setup系统调用及示例
  • 二叉树的锯齿形层次遍历
  • C的运算符与表达式
  • 6. 平台总线
  • 安灯系统(Andon System)