Scala数据结构
BigDataMK
这个作者很懒,什么都没留下…
展开
-
Scala数据结构——优先级队列
优先级队列思路上篇介绍的栈和队列无法按照人们想要的顺序对数据进行读取,优先级队列即可按照一定的优先顺序实现对队列中的数据存取操作。实现原理还是在队列中插入数据时,需要和已知有序的队列比较元素的大小,然后给当前插入的元素寻找到合适的位置插入即可实现有顺序的队列。因为和普通队列相似,只不过时优先级队列添加元素的逻辑略有不同,就不画图了。代码见下图:代码import util.control.Breaks._import scala.io.StdInobject FirstArrayQue原创 2020-07-24 14:36:32 · 408 阅读 · 0 评论 -
Scala数据结构——栈和队列
栈和队列1.栈思路: 栈在编程中是一个比较常见的思想。可以简单的把栈理解为一个用来盛装信件的邮箱,每一 次投递的信件都在之前投递的信件上边,当我们从这个邮箱中取信件时,也是从最上边 (最晚投递进去)信件开始取,也就是先进后出。当然,有时候你可能会按照信件的紧急 与否,决定取出的顺序,比如将最紧急的信件放在最上边,这就不是传统意义上的栈了, 从栈底拿信件处理,就是队列的结构,如果区分优先级别,就是优先级队列。下边是一个 栈的示意图。代码: 代码包括创建栈,栈的压入,弹出,遍历栈的元素。原创 2020-07-24 09:51:46 · 378 阅读 · 0 评论 -
Scala数据结构——简单排序
Scala版数据结构——简单排序1. 冒泡排序思路: 冒泡排序作为排序算法中的入门级算法,思路也是相对简单。但是相对的,也是各种排序算法中运行速度相对较慢的一种。其大致思路 就是,每次拿一个元素和相邻的元素进行比较,每次比较时,满足大小条件的,就会交换位置,经过一轮排序后,最大(或最小)的数就会 到最右边的位置。重复进行,直到找到倒数第一大(小)的数,整个排序就完成了。详情见下图。代码:def main(args: Array[String]): Unit = { val原创 2020-07-23 20:25:42 · 707 阅读 · 0 评论