求广义表深度(严 5.30)西工大NOJ数据结构 T014(DFS另解)

本文提供了一种不依赖广义表的解法,仅关注括号并利用深度优先搜索(DFS)思想。通过配对括号并从最外层开始递归深搜,找到括号之间的深度。文章附带代码解析和深度搜索单元的示意图。
摘要由CSDN通过智能技术生成

在这里插入图片描述
**

在这里提供一种与广义表无关的解法

只考虑括号,运用深搜(DFS)的思想。
*(DFS不明白的小伙伴,可以去CSDN上搜一搜 *
**
直接上代码

#include<iostream>
#include<cstring>
using namespace std;

int r,dep=1,MAX=0;//r是括号的组数, dep是广义表的深度,至少为1,MAX是用来记录最大深度的
char t[10000];//用字符串t来存广义表

//定义结构体kuohao来记录每一对括号的位置
struct kuohao
{
   
	int s;//s是左括号的位置 start
	int e;//e是右括号的位置 end
}a[10000];

int find(int k)//find函数用来寻找每一个左括号所对应的右括号,k是左括号的位置
{
   
	int i,sum=1;
	for(i=k+1;;i++)
	{
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值