c++数据结构
a931136789
这个作者很懒,什么都没留下…
展开
-
单循环链表的倒置
核心算法: 利用链表的删除和头插法,实现链表的倒序输出(主文件中)头文件: myLink.h#includestruct Node { int data; Node *next; };class myLink{ public: myLink(); Node *head; void creatL原创 2015-11-06 22:39:35 · 857 阅读 · 0 评论 -
c++之栈的顺序表实现
利用顺序表实现栈#include#define MAX 50class myStack{ private: int data[MAX]; int size; public: myStack(); void push(int a); int pop(); int getTop(); int getSize(); bool isEm原创 2015-11-23 20:56:18 · 295 阅读 · 0 评论 -
c++栈之带括号的四则运算
题目要求: 实现带括号的四则运算。实现思想: 创建两个栈,保存数字和符号,根据运算级的高低,确定弹栈以及压栈(栈为模板类,因为有两个不同类型的栈)。代码#include#define MAX 50using namespace std;template class myStack{ private:转载 2015-11-23 20:47:37 · 2150 阅读 · 2 评论 -
c++之链表实现栈
利用头插法和头结点删除的方法,实现栈储存的特点#include#include struct Node { int data; Node *next; };class myStack{ public: myStack(); void push(int a); int pop(); bool isEmpty(); int size(原创 2015-11-23 22:19:08 · 437 阅读 · 0 评论 -
c++栈之括号匹配问题
题目要求: 1、输入一串括号,判断是否匹配,如:{()}正确,{(})错误。 2、括号顺序正确。如{()}正确,()[]正确,([])错误利用链栈实现的该程序。代码如下:#include #原创 2015-11-23 22:32:09 · 923 阅读 · 0 评论 -
c++之判断栈的弹出是否合法
题目:判断弹栈的顺序是否合法实现思想:首先输入要判断数据的大小的个数N,在输入压栈的顺序,再输入弹栈的顺序。输入栈的数字用数组保存,弹栈的顺序数字用栈保存。 当栈的top为数组的第一个元素时,弹出栈中元素,并删除数组中元素(利用下标实现),如果不是,则从数组当前的第一个位置找,找到该元素时,弹栈并删除数组的该元素以及之前的元素,如果栈中每个元素都原创 2015-11-23 20:58:41 · 585 阅读 · 0 评论