rss· 投稿· 设为首页· 加入收藏· 繁體版
当前位置: 火魔网 » 程序开发 » Scala

屎壳郎(scala)的归并排序算法

今天试着用scala写了一下Merge Sort,还蛮好玩的 object MergeSort{
def main(args:Array[String])={
var list = List(3,5,6,1,1,4,7);
sort(list,(x:int,y:int)=>(x < y)).foreach(println(_)); /**
* MergeSort algorithm
* @Param def sort[T](args:List[T] , lessFunc:(T,T)=>Boolean):List[T]={
def merge( list1:List[T],list2:List[T]):List[T]={
if (list1.length <= 0) list2;
else if (list2.length <= 0 ) list1;
else if ( lessFunc(list1.head, list2.head) ) list1.head::merge(list1.tail,list2);
else list2.head::merge(list1,list2.tail); val medpos = args.length / 2; merge( args.take(medpos) , args.drop(medpos) ); }
顶一下
(0)
踩一下
(0)