scala快排练习

abstract class sort_ {
  def quickSort(lis:List[Int]):List[Int]={
    if (lis.length < 2){
      lis
    }else {
      var (left, right) = quick_(lis)
      left = quickSort(left)
      right = quickSort(right)
      //    left.concat(right)
      var mz = left.:::(right)
      mz
    }
  }
  def quick_(lis:List[Int]):(List[Int],List[Int])={
    var top = lis(0)
    //    var tlis = lis.groupBy()
    var left: ListBuffer[Int] = ListBuffer[Int]()
    var right: ListBuffer[Int] = ListBuffer[Int]()
    if (lis.length > 2) {
      var (r,l) = lis.partition(_ > top)
      left ++= l
      right ++= r
    }else {
      var one = lis(0)
      var two = lis(1)
      var (l, r) = if (one

第一次写scala程序,踩坑太多。。后续再优化把

你可能感兴趣的:(scala,算法)