2010-10-26 36 views
0

在采访问题中,我看到了这个。如何反转此列表的内容而不会丢失引用。反向列表不失遗失

List<string> list = new List<string>() {"AA", "BB", "CC" }; 

更新:

的问题是更喜欢这个,你有:

public void ReversedList<T>(IList<T> listToReverse) 
{ 
// To be implemented 
} 

样品列表中有1,2,3,4和必须返回4,3,2, 1没有失去参考。

+0

如果有人在采访中问我这个问题,我会问这是否是一些诡计问题。这是在采访中没有地位的微不足道的东西,它更适合筛选过程。 – leppie 2010-10-27 06:39:47

+0

你可以做旧的交换算法 - 替换第一个与最后一个,第二个与前一个等... – 2010-10-27 07:28:35

+0

你确定关于std :: List还是更像C链表结构? – 2010-11-01 14:30:24

回答

8

你的意思是反向,即改变顺序为“CC”,“BB”,“AA”?只需拨打List<T>.Reverse()

list.Reverse(); 

如果这不是你的意思,请编辑你的问题更具体。 (这并不是很清楚你的意思是“没有任何参考文献”。)

2

除非我遗漏了一些东西,否则list.Reverse()会做你想做的事情(反转元素到位而不是用​​相同的方法创建一个新列表项目以相反的顺序)。