怎么把这玩意儿改成非递归
void dfs(int x){ l[x]=++cnt,c[cnt]=a[x],d[cnt]=b[x],e[cnt]=pr[x]; for(int i=0;i<ed[x].size();i++) dfs(ed[x][i]); r[x]=cnt; }