⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 s_stack.h

📁 一个求无向无权图的最短路径的算法
💻 H
字号:
//?:(002)s_stack.h
//:S_STACK.H class file define
#ifndef S_STACK_H
#define S_STACK_H

template<class T>
class s_stack
{
	struct s_node
	{
		T data;
		s_node *next;
		s_node(T dat,s_node* nxt)
		{
			data=dat;
			next=nxt;
		}
		~s_node(){};
	}*head;
public:
	s_stack();
	void stack_push(T data);
	T stack_pop(void);
	bool stack_not_empty();
	~s_stack();
};


template<class T>
s_stack<T>::s_stack()
{	
	head=0;
}
template<class T>
void s_stack<T>::stack_push(T data)
{
	head=new s_node(data,head);
}
template<class T>
bool s_stack<T>::stack_not_empty()
{
	if (head!=0) return true;
	return false;
}
template<class T>
T s_stack<T>::stack_pop(void)
{
	if (head==0) return 0;
	T result=head->data;
	s_node* oldhead=head;
	head=head->next;
	delete oldhead;
	return result;
}
template<class T>
s_stack<T>::~s_stack()
{
	s_node *oldhead,*tmphead;
	oldhead=head;
	while(oldhead!=0)
	{
		tmphead=oldhead;
		oldhead=oldhead->next;
		delete tmphead;
	}
}
#endif
//:End the s_stack class file define

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -