在C#中,如何通过指定的位数将列表向右旋转?

时间:2016-06-15 22:17:35

标签: c#

我尝试编写一个测试程序,其中我有两个参数,一个名为items的int列表,以及一个名为places的int,我将在其中将列表向右旋转指定的位数

这是我到目前为止所做的尝试。

var url = "http://stackoverflow.com";

var page = require('webpage').create();

page.onConsoleMessage = function(msg) {
  console.log('Page title is ' + msg);
};

page.onLoadFinished = function(status) {
  console.log('Status: ' + status);
};

page.open(url, function(status) {
  page.evaluate(function() {
    console.log(document.title);
  });

  phantom.exit();
});

1 个答案:

答案 0 :(得分:0)

您可以使用LINQ执行此操作:

IEnumerable<T> RotateLeft<T>(IEnumerable<T> list, int places)
{
    return list.Skip(places).Concat(list.Take(places));
}

IEnumerable<T> RotateRight<T>(IEnumerable<T> list, int places)
{
    return RotateLeft(list, list.Count() - places);
}