假设我有一个这样的数组,
The, Quick, Brown, Fox, Jumps
我需要将其中一个元素移动/移动到前面,所以它看起来像这样
Brown, Fox, Jumps, The, Quick
如何像旋转门一样对数组进行排序?通过移动一个元素并让其余元素跟在后面?
有没有简单的方法或者我应该复制/循环/切片/复制?
最佳答案
试试下面的方法
public void ShiftRevolvingDoor(ArrayList list, int count) {
while ( count > 0 ) {
ShiftRevolvingDoor(list);
count--;
}
}
public void ShiftRevolvingDoor(ArrayList list) {
if ( list.Count < 2 ) {
return;
}
int lastIndex = list.Count - 1;
object first = list[0];
for ( i = 0; i < lastIndex; i++) {
list[i] = list[i+1];
}
list[lastIndex] = first;
}
关于c# - 将 ArrayList 的元素移动到前面,同时保持顺序 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3645339/