最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

面试题

IT圈 admin 26浏览 0评论

面试题

编程实现下面的栈顶操作:

 

class MyData
{void push(data);void pop(&data);bool isEmpty();
};
解析:显然这里需要实现栈的3种基本操作,即进栈、出栈以及判空。为了方便起见,使用单链表结构实现栈并且使用类的形式来定义站内及其节点。首先是节点类和栈类的具体定义,程序代码如下:

 

 

#include <iostream>
using namespace std;class MyData
{
public:MyData() : data(0), next(NULL){}      //默认构造函数MyData(int value) : data(value), next(NULL){}  //带参数的构造函数int data;				//数据域MyData *next;			//下一个节点
};class MyStack
{
public:MyStack() : top(NULL) {}	//默认构造函数void push(MyData data);		//进栈void pop(MyData *pData);	//出栈bool IsEmpty();				//是否为空MyData *top;				//栈顶
};
        由于不能直接操作栈底,因此这里没有定义栈底的指针。在MyStack的默

面试题

编程实现下面的栈顶操作:

 

class MyData
{void push(data);void pop(&data);bool isEmpty();
};
解析:显然这里需要实现栈的3种基本操作,即进栈、出栈以及判空。为了方便起见,使用单链表结构实现栈并且使用类的形式来定义站内及其节点。首先是节点类和栈类的具体定义,程序代码如下:

 

 

#include <iostream>
using namespace std;class MyData
{
public:MyData() : data(0), next(NULL){}      //默认构造函数MyData(int value) : data(value), next(NULL){}  //带参数的构造函数int data;				//数据域MyData *next;			//下一个节点
};class MyStack
{
public:MyStack() : top(NULL) {}	//默认构造函数void push(MyData data);		//进栈void pop(MyData *pData);	//出栈bool IsEmpty();				//是否为空MyData *top;				//栈顶
};
        由于不能直接操作栈底,因此这里没有定义栈底的指针。在MyStack的默
发布评论

评论列表 (0)

  1. 暂无评论