сортировка в динам. списке
Добавлено: 23 ноя 2008, 23:46
Здравствуйте, уважаемые участники форума. Есть следующая реализация односвязного динамического списка:
[Syntax="C#"]
public class Spisok
{
public class Node //структура элемента списка
{
public string Name;
public string Type;
public string Value;
public Node Next;
}
public Node First = new Node(); //первый элемент
Node Now; //текущий элемент
public Spisok() //конструктор по-умолчанию
{
First.Name = null;
First.Type = null;
First.Value = null;
Now = First;
}
public void Add(string name, string type, string value) //добавление элемента
{
Now = First;
do
{
if (Now.Name == null) { Now.Name = name; Now.Type = type; Now.Value = value; Now.Next = new Node(); }
else
{
Now = Now.Next;
}
} while (Now.Name != name);
}
public void Out(Node T) //обход дерева
{
if (T.Name != null) { Console.Write(T.Name.TrimEnd(':') + " ") ; Console.Write(T.Type + " "); Console.WriteLine(T.Value); }
if (T.Next != null) { Out(T.Next); }
}
...
}
[/Syntax]
Есть и другие методы, но не в этом суть...
Никак не могу добавить вменяемо работающую процедуру сортировки... Помогите, кто чем может... ;-) Заранее благодарен.
[Syntax="C#"]
public class Spisok
{
public class Node //структура элемента списка
{
public string Name;
public string Type;
public string Value;
public Node Next;
}
public Node First = new Node(); //первый элемент
Node Now; //текущий элемент
public Spisok() //конструктор по-умолчанию
{
First.Name = null;
First.Type = null;
First.Value = null;
Now = First;
}
public void Add(string name, string type, string value) //добавление элемента
{
Now = First;
do
{
if (Now.Name == null) { Now.Name = name; Now.Type = type; Now.Value = value; Now.Next = new Node(); }
else
{
Now = Now.Next;
}
} while (Now.Name != name);
}
public void Out(Node T) //обход дерева
{
if (T.Name != null) { Console.Write(T.Name.TrimEnd(':') + " ") ; Console.Write(T.Type + " "); Console.WriteLine(T.Value); }
if (T.Next != null) { Out(T.Next); }
}
...
}
[/Syntax]
Есть и другие методы, но не в этом суть...
Никак не могу добавить вменяемо работающую процедуру сортировки... Помогите, кто чем может... ;-) Заранее благодарен.