您的位置:首页 > 编程语言 > C#

用c# 写一个递归程式

2004-02-27 21:30 267 查看
今天看见一个xsl利用递归的模板将一个xml文件生成一个叉树结构,很是佩服。
想用c#写一个同样的东西,可惜当初没有学过什么数据结构,不是很清楚到底怎么作?
没有办法,化了一个下午看资料,有个网站写的比较详细,是教育网的,可惜写东西的时候没有记住网址



按照自己的理解,写了一个很垃圾的递归程式,
using System;

class myclass{

public static string[] slist;

public static void digui(string id)
{

for(int i=0;i<slist.Length;i++)
{
if(id==slist[i]) System.Console.Write("<div>"+id+"\n");
int j=id.Length;
if (id.Length<=slist[i].Length)
if ((slist[i].Substring(0,id.Length)==id)&&(slist[i].Length-id.Length==2))
{

// System.Console.Write("checkpoint \n");
digui(slist[i]);
System.Console.Write("</div>");

}

}

}

public static void Main(string[] args) {
slist=new string[8];
slist[0]="01";
slist[1]="0101";
slist[2]="010101";
slist[3]="0102";
slist[4]="010102";
slist[5]="01010101";
slist[6]="010201";
slist[7]="01020102";
digui("01");
}
}

结果生成的效果跟那个递归模板是一样的。
不过,我觉得我用的步数是8×8,好像还可以写的更少一些。
这个等以后再看看。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: