我的问题是这个。我有一个学校作业,要求我在给定的链接类中添加一个新方法,我不允许对我当前的链接列表类进行任何更改
III。 RemoveParcelAtPosition(int n)
:此方法将删除链接列表中位置n处的节点。假设链表的第一个节点的位置编号为1,第二个节点的位置编号为2,依此类推。
class LinkedList
{
private Node head; // first node in the linked list
private int count;
public int Count
{
get { return count; }
set { count = value; }
}
public Node Head
{
get { return head; }
}
public LinkedList()
{
head = null; // creates an empty linked list
count = 0;
}
public void AddFront(int n)
{
Node newNode = new Node(n);
newNode.Link = head;
head = newNode;
count++;
}
public void DeleteFront()
{
if (count > 0)
{
Node temp = head;
head = temp.Link;
temp = null;
count--;
}
}
}
答案 0 :(得分:3)
使用继承。
使用您需要的方法创建一个新类。继承Linkedlist
班级中的班级。
答案 1 :(得分:2)
您可能应该使用extension methods
像这样的东西
namespace LinkedListExtension
{
public static class MyExtensions
{
public static void RemoveParcelAtPosition(this LinkedList, int n)
{
// remove here
}
}
}
此方法调用如下所示:
_yourLinkedList.RemoveParcelAtPosition(position);