using System.Linq;publicclassKata{publicstaticobject[]DeepReverse(object[] l){return l.Select(e => e.GetType().IsArray ?DeepReverse((object[])e): e).Reverse().ToArray();}}
答案2:
using System;using System.Linq;publicclassKata{publicstaticobject[]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]asobject[]);}return l;}}
答案3:
using System;publicclassKata{publicstaticobject[]DeepReverse(object[] l ){for(int i =0; i < l.Length; i++){var t = l [ i ]asobject[];if( t !=null){
l [ i ]=DeepReverse( t );}}
Array.Reverse( l );return l;}}
答案4:
using System.Linq;publicclassKata{publicstaticobject[]DeepReverse(object[] l){for(var index =0; index < l.Length; index++)if(l[index]isobject[]) l[index]=DeepReverse((object[]) l[index]);return l.Reverse<object>().ToArray();}}
答案5:
using System;using System.Linq;publicclassKata{publicstaticobject[]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;publicclassKata{publicstaticobject[]DeepReverse(object[] l)=> l.Select(o =>(object)((o is Array)?DeepReverse((object[])o): o)).Reverse().ToArray();}
using System.Linq;publicclassKata{publicstaticobject[]DeepReverse(object[] l){return l.Reverse().Select(x=>(x isobject[])?DeepReverse((object[])x):x).ToArray();}}
答案9:
using System.Linq;publicclassKata{publicstaticobject[]DeepReverse(object[] l){
l = l.Reverse().ToArray();for(int c=0; c<l.Length; c++){object[] nextLevel = l[c]asobject[];if(nextLevel !=null)
l[c]=DeepReverse(nextLevel);}return l;}}
答案10:
using System;using System.Collections.Generic;using System.Linq;publicclassKata{publicstaticobject[]DeepReverse(object[] l){return l.Reverse().Select(x => x isobject[]?DeepReverse(x asobject[]): x).ToArray();}}