Реализация односвязанного списка - C#
Формулировка задачи:
Здравствуйте. Начал изучать списки, но не совсем понятно.
Я понял, что элементы добавляются с конца, но как сделать чтобы они добавлялись как в обычном массиве слева на право ?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
last.add_last.List.add();
}
}
namespace last
{
#region
public class add_last
{
public class Node
{
public int value;
public Node next;
}
public Node last;
public void addlast(int value)
{
Node node = new Node();
node.next = this.last;
node.value = value;
this.last = node;
}
public void print()
{
var last = true;
for (var node = this.last; node != null; node = node.next)
{
if (!last)
{
Console.Write(" ");
}
last = false;
Console.Write(node.value);
}
Console.WriteLine();
}
public static class List
{
public static void add()
{
var list = new add_last();
list.print();
list.addlast(3);
list.addlast(2);
list.addlast(1);
list.print();
}
}
#endregion
}
}
}Решение задачи: «Реализация односвязанного списка»
textual
Листинг программы
list.Insert(0, value);