zoukankan      html  css  js  c++  java
  • Scala写排序可以说是简洁又明了

    例如归并排序,清晰明了。

    object MergeSort extends App {
        val oldList = List[Int](124026897544326518)
        val list = mergeSort(oldList)
        println(list)
        def mergeSort(list:List[Int]):List[Int]={
           val n=list.size/2
           if(n==0)list
           else{
               val (xs,ys)=list.splitAt(n);
               merge(mergeSort(xs),mergeSort(ys))
           }
        }
        def merge(xs:List[Int],ys:List[Int]):List[Int]={
           (xs,ys) match{
             case (_,Nil) =>xs
             case (Nil,_=>ys
             case (x::list1,y::list2)=> {
               if(x>y) y::merge(list2,xs)
               else x::merge(list1,ys)
             }
          }
        }
     

    快速排序

    def quickSort(xs: Array[Int]): Array[Int] = {
      if(xs.length <= 1) xs
      else{
        val pivot = xs(xs.length / 2)
        Array.concat(    //合并
          quickSort(xs filter (pivot >)),
          xs filter (pivot ==),
          quickSort(xs filter (pivot <))
        )
      }
    }

  • 相关阅读:
    instruments 内存泄漏
    ios常用数学函数
    正则表达式
    view设置成圆角
    关于新浪微博注销后自动登录的问题
    根据视频地址获取某一帧的图像
    使用DES加解密
    实现通讯录的查询与删除
    iOS 动画效果
    iOS 文字下划线
  • 原文地址:https://www.cnblogs.com/nethk/p/5609378.html
Copyright © 2011-2022 走看看