資源簡(jiǎn)介
實(shí)現(xiàn)廣義表的創(chuàng)建,求廣義表的深度,輸出廣義表
代碼片段和文件信息
#include?“stdafx.h“
#include?“config.h“
using?namespace?std;
typedef?enum{
ATOM //表示原子
LIST //子表
}ElemTag;
typedef?struct?GLNode{
ElemTag?tag; //原子結(jié)點(diǎn)和表結(jié)點(diǎn)
union{
char?atom; //原子結(jié)點(diǎn)的值域
struct?{
struct?GLNode?*hp?*tp;
}ptr; //指針域,分別指向表頭和表尾
};
struct?GLNode?*tp; //指向下一個(gè)元素的節(jié)點(diǎn)
}?*GList;
void?sever(string?&strstring?&hstr)
{
int?n?=?str.length();
int?i(0)k(0);
while?(i? {
if?(str[i]?==?‘(‘)
{
++k;
}
else?if?(str[i]?==?‘)‘)
{
--k;
}
i++;
}?
if?(i? {
hstr?=?str.substr(0i);
str?=?str.substr(i+1);
}
else
{
hstr?=?str;
str.clear();
}
}
void?CreatGList(GList?&Lstring?S)
{
GList?p(NULL)q(NULL);
string?sub(““)hsub(““);
if?(S?==
評(píng)論
共有 條評(píng)論