用c# 写一个递归程式
2004-02-27 21:30
267 查看
今天看见一个xsl利用递归的模板将一个xml文件生成一个叉树结构,很是佩服。
想用c#写一个同样的东西,可惜当初没有学过什么数据结构,不是很清楚到底怎么作?
没有办法,化了一个下午看资料,有个网站写的比较详细,是教育网的,可惜写东西的时候没有记住网址
![](http://www.cnblogs.com/Emoticons/red_smile.gif)
。
按照自己的理解,写了一个很垃圾的递归程式,
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,好像还可以写的更少一些。
这个等以后再看看。
想用c#写一个同样的东西,可惜当初没有学过什么数据结构,不是很清楚到底怎么作?
没有办法,化了一个下午看资料,有个网站写的比较详细,是教育网的,可惜写东西的时候没有记住网址
![](http://www.cnblogs.com/Emoticons/red_smile.gif)
。
按照自己的理解,写了一个很垃圾的递归程式,
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,好像还可以写的更少一些。
这个等以后再看看。
相关文章推荐
- C# 2.0 Specification(二)
- C# 2.0 Specification(一)简介
- C# 2.0 Sepcification(三)
- 在C#中应用哈希表(Hashtable)
- singleton设计模式的C#实现(上)
- Singleton设计模式的C#实现(下)
- 学习一下C#中的as与is
- 几个比较好用的Windows API在C#中的用法。
- 用C#修改Windows 2000用户密码
- 从函数指针到代理(C#代理入门)
- C#中的cookie编程
- VC# .Net中浏览Crystal Report
- C#2.0简介
- 利用Visual C#处理数字图像
- Online C# Class Generator
- 一周学会C#(类三)
- 一周学会C#(类二)
- 一周学会C#(类一)
- 一周学会C#(索引二)
- 一周学会C#(索引一)