C#练习题答案: 深名单反向【难度:2级】--景越C#经典编程题库,1000道C#基础练习题等你来挑战
作者:互联网
深名单反向【难度:2级】:
答案1:
using System.Linq;
public class Kata
{
public static object[] DeepReverse(object[] l)
{
return l.Select(e => e.GetType().IsArray ? DeepReverse((object[])e) : e).Reverse().ToArray();
}
}
答案2:
using System;
using System.Linq;
public class Kata
{
public static object[] DeepReverse(object[] l)
{
l = l.Reverse().ToArray();
for (int i = 0; i < l.Count(); i++)
{
Type typek = l[i].GetType();
if (typek.IsArray) l[i] = DeepReverse(l[i] as object[]);
}
return l;
}
}
答案3:
using System;
public class Kata {
public static object[] DeepReverse( object[] l ) {
for ( int i = 0; i < l.Length; i++ ) {
var t = l [ i ] as object[];
if ( t != null ) {
l [ i ] = DeepReverse( t );
}
}
Array.Reverse( l );
return l;
}
}
答案4:
using System.Linq;
public class Kata
{
public static object[] DeepReverse(object[] l)
{
for (var index = 0; index < l.Length; index++) if (l[index] is object[]) l[index] = DeepReverse((object[]) l[index]);
return l.Reverse<object>().ToArray();
}
}
答案5:
using System;
using System.Linq;
public class Kata
{
public static object[] DeepReverse(object[] l)
{
l = l.Reverse().ToArray();
for(int i=0;i<l.Length;i++) if(l[i] is Array) l[i]=DeepReverse((object[])l[i]);
return l;
}
}
答案6:
using System;
using System.Linq;
public class Kata
{
public static object[] DeepReverse(object[] l) => l.Select(o => (object)((o is Array) ? DeepReverse((object[])o) : o)).Reverse().ToArray();
}
答案7:
public class Kata
{
public static object[] DeepReverse(object[] input)
{
var n = input.Length;
var result = new object[n];
for(int i=0; i<n; i++)
{
var currentItem = input[n - 1 - i];
var currentItemAsArray = currentItem as object[];
result[i] = currentItemAsArray != null ? DeepReverse(currentItemAsArray) : currentItem;
}
return result;
}
}
答案8:
using System.Linq;
public class Kata
{
public static object[] DeepReverse(object[] l)
{
return l.Reverse().Select(x=>(x is object[])?DeepReverse((object[])x):x).ToArray();
}
}
答案9:
using System.Linq;
public class Kata
{
public static object[] DeepReverse(object[] l)
{
l = l.Reverse().ToArray();
for (int c=0; c<l.Length; c++)
{
object[] nextLevel = l[c] as object[];
if (nextLevel != null)
l[c] = DeepReverse(nextLevel);
}
return l;
}
}
答案10:
using System;
using System.Collections.Generic;
using System.Linq;
public class Kata
{
public static object[] DeepReverse(object[] l)
{
return l.Reverse().Select(x => x is object[] ? DeepReverse(x as object[]) : x).ToArray();
}
}
标签:练习题,景越,C#,object,System,static,using,DeepReverse,public 来源: https://blog.csdn.net/weixin_45444821/article/details/101096044