`

Scala编程之插入排序

 
阅读更多

一、总述

       排序,这是一个十分经典且实用的算法。不论,你学习的何种编程语言,排序算法都是作为软件工程师或研发工程师所必须掌握的东西。最近一直在学习Scala,下面就通过Scala语言实现插入排序算法。

 

二、插入排序算法

       定义一个名为InsertSort的object对象

/**
  * Created by user on 2016/1/22.
  */
object InsertSort {
   def sort(x: List[Int]): List[Int] = {
       if(x.isEmpty){
          Nil
       }else{
          insert(x.head,sort(x.tail))
       }
   }

   def insert(x: Int,xs: List[Int]): List[Int] = {
       if(xs.isEmpty || x <= xs.head){
          x :: xs
       }else{
          xs.head :: insert(x,xs.tail)
       }
   }

   def main(args: Array[String]) {
       val num = 2 :: 1 :: 4 :: 3 :: 5 :: 7 :: 0 :: Nil
       val result = sort(num)
       println("Insert Sort: " + result)
   }
}

 

三、测试结果

       Insert Sort: List(0, 1, 2, 3, 4, 5, 7)

分享到:
评论

相关推荐

    scala编程中文pdf

    scala编程 33章 中文pdf Scala编程实战 目录 第1章字符串. 11 第2章数值39 第3章控制结构.60 第4章类和属性.103 第5章方法147 第6章对象170 第7章包和导入.190 第8章特质200 第9章函数式编程214 第10 章集合242 第...

    Scala编程详解 第14讲-Scala编程详解:面向对象编程之继承 共13页.pptx

    第12讲-Scala编程详解:面向对象编程之类 共12页 第13讲-Scala编程详解:面向对象编程之对象 共9页 第14讲-Scala编程详解:面向对象编程之继承 共13页 第15讲-Scala编程详解:面向对象编程之Trait 共14页 第16讲-...

    Scala编程详解 第13讲-Scala编程详解:面向对象编程之对象 共9页.pptx

    第12讲-Scala编程详解:面向对象编程之类 共12页 第13讲-Scala编程详解:面向对象编程之对象 共9页 第14讲-Scala编程详解:面向对象编程之继承 共13页 第15讲-Scala编程详解:面向对象编程之Trait 共14页 第16讲-...

    Scala编程详解 第12讲-Scala编程详解:面向对象编程之类 共12页.pptx

    第12讲-Scala编程详解:面向对象编程之类 共12页 第13讲-Scala编程详解:面向对象编程之对象 共9页 第14讲-Scala编程详解:面向对象编程之继承 共13页 第15讲-Scala编程详解:面向对象编程之Trait 共14页 第16讲-...

    Scala编程 第3版中文版.7z

    《Scala编程(第3版)》由直接参与Scala开发的一线人员编写,因而对原理的解读和应用的把握更加值得信赖。《Scala编程(第3版)》面向具有一定编程经验的开发者,目标是让读者能够全面了解和掌握Scala编程语言的核心...

    Scala编程详解 第21讲-Scala编程详解:Actor入门 共8页.pptx

    第12讲-Scala编程详解:面向对象编程之类 共12页 第13讲-Scala编程详解:面向对象编程之对象 共9页 第14讲-Scala编程详解:面向对象编程之继承 共13页 第15讲-Scala编程详解:面向对象编程之Trait 共14页 第16讲-...

    Scala编程详解 第19讲-Scala编程详解:类型参数 共13页.pptx

    第12讲-Scala编程详解:面向对象编程之类 共12页 第13讲-Scala编程详解:面向对象编程之对象 共9页 第14讲-Scala编程详解:面向对象编程之继承 共13页 第15讲-Scala编程详解:面向对象编程之Trait 共14页 第16讲-...

    Scala编程(第3版)

    《Scala编程(第3版)》面向具有一定编程经验的开发者,目标是让读者能够全面了解和掌握Scala编程语言的核心特性,并能够深入理解Scala这门语言在设计取舍背后的动因。即便是不直接使用Scala或从事一线编程工作的...

    Scala编程详解 第8讲-Scala编程详解:函数入门之过程、lazy值和异常 共5页.pptx

    第12讲-Scala编程详解:面向对象编程之类 共12页 第13讲-Scala编程详解:面向对象编程之对象 共9页 第14讲-Scala编程详解:面向对象编程之继承 共13页 第15讲-Scala编程详解:面向对象编程之Trait 共14页 第16讲-...

    Scala编程详解 第9讲-Scala编程详解:数组操作之Array、ArrayBuffer以及遍历数组 共7页.pptx

    第12讲-Scala编程详解:面向对象编程之类 共12页 第13讲-Scala编程详解:面向对象编程之对象 共9页 第14讲-Scala编程详解:面向对象编程之继承 共13页 第15讲-Scala编程详解:面向对象编程之Trait 共14页 第16讲-...

    Scala编程详解 第4讲-Scala编程详解:条件控制与循环 共7页.pptx

    第12讲-Scala编程详解:面向对象编程之类 共12页 第13讲-Scala编程详解:面向对象编程之对象 共9页 第14讲-Scala编程详解:面向对象编程之继承 共13页 第15讲-Scala编程详解:面向对象编程之Trait 共14页 第16讲-...

    Scala编程实战(包含源码)完整版Alvin Alexander著.part1.rar

    Scala编程实战(包含源码)完整版Alvin Alexander著.part1.rar

    Scala编程 pdf

    内含Scala编程PDF版书籍 可详细学习Scala编程 内含Scala编程PDF版书籍 可详细学习Scala编程

    《scala编程》第3版英文版&第3版源码

    资源包含《Scala编程》第3版英文版和第3版源代码,Scala编程第3版,目前是最新版,支持Scala 2.11以上。《Scala编程》是Scala语言的创始人参与编写的,涵盖的语法特性非常全面,并且作者解释了为什么这么设计,有...

    Scala函数式编程

    《Scala函数式编程》是针对希望学习FP并将它应用于日常编码中的程序员而写的,内容包括:函数式编程的概念;函数式编程相关的各种“为什么”和“怎么做”;如何编写多核程序;练习和检测。 从OOP到FP,思路的转化 ...

    Scala编程(第三版)中英文.zip

    Scala编程(第三版)中英文,代码全 Martin Odersky 是Scala 编程语言的缔造者。他是瑞士洛桑理工学院(EPFL)的教授,同时也是Typesafe, Inc.(已更名为Lightbend)的创始人。他的研究方向是编程语言和系统,更具体...

    scala编程指南第三版

    spark,scala编程指南第三版,非常好的资料,高清无水印

    Scala_Scala编程

    Scala编程;Scala编程;Scala编程;Scala编程;Scala编程

    Scala编程完整版 PDF

    压缩包内是Scala编程完整版高清PDF文档,解压即可使用。

Global site tag (gtag.js) - Google Analytics