链栈 「爱情、让人受尽委屈。」 2022-06-03 20:42 135阅读 0赞 //linkstack.h #include<string.h> #include<malloc.h> #include<limits.h> #include<stdio.h> #include<io.h> #include<math.h> #include<process.h> #define TRUE 1 #define FALSE 0 #define OK 1 #define ERROR -1 #define INFEASIBLE -1 typedef int DataType; typedef struct node { DataType data; struct node *next; }LinkStack; LinkStack *LStackInit() { LinkStack *h; h=(LinkStack*)malloc(sizeof(LinkStack)); h->data=1; h->next=NULL; return h; } int LStackIsEmpty(LinkStack *ls) { return (ls->next?FALSE:TRUE); } LinkStack *LStackPush(LinkStack *ls,DataType x) { LinkStack *p; p=(LinkStack*)malloc(sizeof(LinkStack)); p->data=x; p->next=ls; ls=p; return ls; } DataType LStackGetTop(LinkStack *ls) { if(!ls) { printf("栈是空的"); return NULL; } return ls->data; } LinkStack *LStackPop(LinkStack *ls,DataType *e) { LinkStack *p; if(!ls) { printf("栈是空的"); return NULL; } p=ls; *e=p->data; ls=ls->next; free(p); return ls; } //main.cpp #include"linkstack.h" int main() { int a[5]={ 1,2,3,4,5},i,isempty; LinkStack *linkStack; DataType tmp; linkStack=LStackInit(); printf("依次向栈内压入1,2,3,4,5:\n"); for(i=0;i<5;i++) { linkStack=LStackPush(linkStack,a[i]); } printf("栈顶元素为:"); printf("%d\n",LStackGetTop(linkStack)); linkStack=LStackPop(linkStack,&tmp); printf("出栈后的栈顶元素是:"); printf("%d\n",LStackGetTop(linkStack)); isempty=LStackIsEmpty(linkStack); if(isempty==0) { printf("当前链栈为非空链栈\n"); } else { printf("当前链栈为空链栈\n"); } return 0; }
相关 链栈 typedef struct LinkNode { ElemType data; struct LinkNode next; }LinkSt - 日理万妓/ 2023年08月17日 15:15/ 0 赞/ 80 阅读
相关 链栈 链栈的基本操作与顺序栈一致,但是实现方法有较大差异 首先是在成员变量上,链栈中只包含了一个top指针(主要原因是链栈是动态存储的,在程序运行过程中给需要的变量分配内存,而顺 梦里梦外;/ 2023年02月27日 13:34/ 0 赞/ 14 阅读
相关 java栈链_java实现链栈 标签: 接下来,学习java实现链栈。 链栈类代码: package linkedstack; public class LinkStack \{ private E 悠悠/ 2022年11月04日 00:49/ 0 赞/ 192 阅读
相关 链栈 \define OK 1 \define ERROR 0 \define TRUE 1 \define FALSE 0 \define INFEASIBLE - 怼烎@/ 2022年08月25日 05:27/ 0 赞/ 109 阅读
相关 链栈 package com.loong.datastructure; / 链栈 @author Loong @param <E> / p 不念不忘少年蓝@/ 2022年07月19日 02:17/ 0 赞/ 130 阅读
相关 链式栈 2016年7月23日15:39:13 为什么需要链式栈? 这是因为,顺序栈的使用需要事先指定存贮空间的大小,如果静态分配的存贮空 ╰+哭是因爲堅強的太久メ/ 2022年07月16日 13:29/ 0 赞/ 251 阅读
相关 链栈 include <iostream> using namespace std; class node { friend clas 妖狐艹你老母/ 2022年07月14日 07:22/ 0 赞/ 117 阅读
相关 链式栈 链式栈 // //Description:链式栈 // include <iostream> include <malloc.h> 偏执的太偏执、/ 2022年06月18日 01:56/ 0 赞/ 183 阅读
相关 链栈 include<stdio.h> typedef struct node { int data; struct node 系统管理员/ 2022年06月16日 13:15/ 0 赞/ 140 阅读
相关 链栈 //linkstack.h include<string.h> include<malloc.h> include<limits.h> inc 「爱情、让人受尽委屈。」/ 2022年06月03日 20:42/ 0 赞/ 136 阅读
还没有评论,来说两句吧...