scala 冒泡排序

Scala函数式编程 第1关:冒泡排序 Spark大数据编程 — 中南大学 Scala函数式编程 第1关:冒泡排序 阅读详情
/**
  * 重复地走访过要排序的元素列,依次比较两个相邻的元素,
  * 如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。
  * 走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。
  */
object Bubble extends App {
  var list: Array[Int] = Array(2, 45, 1, 4, 8, 2, 5, 8, 35, 67, 3, 9, 3, 8, 4, 7, 34);
  for (i <- 0 until list.length) {
    for (j <- 0 until list.length - i - 1) { //每进行一个内循环, list.length-i-1到list.length就已经排好序了
      if (list(j) > list(j + 1)) {
        var tmp = list(j)
        list(j) = list(j + 1)
        list(j + 1) = tmp
      }
    }
  }
  list.foreach(println)
}

用Scala瞎写的冒泡排序算法 学习Scala有段时间了,一直找不到好的实践方式。无意间看到了冒泡排序,就想着用Scala来写写冒泡排序。写到最后发现,真的是乱写一通,不过对于冒泡排序和Scala语言都有了一个新的认识。这就够了。 这片文章就是记录我是如何左拼右凑用Scala把冒泡排序写出来的。 阅读详情

相关推荐

Scala实现冒泡排序、归并排序和快速排序的示例代码

主要介绍了Scala实现冒泡排序、归并排序和快速排序的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

【scala 数据结构和算法】Scala实现:冒泡排序

算法原理:1、比较相邻的元素。如果第一个比第二个大,就交换他们两个。 2、对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。 3、针对所有的元素重复以上的步骤,除了最后一个。 4、持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较scala实现:/** * Created by Administrator on 2017/1

赖德发的博客 1975

Selenium实战:突破反爬,自动化抓取国家知识产权局专利数据

网络爬虫是数据采集的核心技术,其原理是通过程序模拟浏览器行为,自动访问网页并提取结构化信息。在数据驱动决策的今天,高效获取公开数据对市场分析、技术调研和竞争情报至关重要。然而,面对广泛应用的JavaScript动态渲染和反爬虫机制,传统的静态页面抓取方法往往失效。Selenium作为浏览器自动化工具,通过驱动真实浏览器执行JavaScript,能够有效绕过前端反爬,实现“可见即可得”的数据抓取,在需要与页面进行复杂交互或处理动态内容的场景中价值显著。本文以【专利数据】抓取为例,结合【Selenium】工具,

weixin_33881140的博客 394

Scala数据结构——简单排序

Scala版数据结构——简单排序 1. 冒泡排序 思路: 冒泡排序作为排序算法中的入门级算法,思路也是相对简单。但是相对的,也是各种排序算法中运行速度相对较慢的一种。其大致思路 就是,每次拿一个元素和相邻的元素进行比较,每次比较时,满足大小条件的,就会交换位置,经过一轮排序后,最大(或最小)的数就会 到最右边的位置。重复进行,直到找到倒数第一大(小)的数,整个排序就完成了。详情见下图。 代码: def main(args: Array[String]): Unit = { val

齐天大圣数据候的博客 842

kbjdbc: autodetected server-encoding to be ISO-8859-1, if the message is not readable, please check

这条信息是来自 KingbaseES 数据库的一个 JDBC 客户端连接提示。KingbaseES 是一个企业级的关系型数据库管理系统,它兼容 PostgreSQL 的许多特性。如果上述步骤仍然无法解决问题,建议详细查看数据库和客户端的日志文件,以获取更具体的错误信息。此外,也可以考虑联系 KingbaseES 的技术支持获取帮助。项目融合kingbase数据库,输出日志乱码。结果:网上各种调整各种试。

zjy660358的专栏 4844

芯片设计中的STA实战:如何避免时序违例(含常见问题解析)

本文深入探讨了芯片设计中静态时序分析(STA)的实战应用,重点解析了如何避免时序违例。文章从STA的核心逻辑与约束制定出发,强调了将时序意识植入RTL编码与综合阶段的重要性,并详细介绍了后端物理实现中的时序收敛策略。同时,针对跨时钟域路径误报、多工艺角违例等常见问题提供了深度解析与调试技巧,旨在帮助IC设计工程师系统性地掌握时序分析与优化方法。

open4的博客 513

用Scala语言实现冒泡排序

Java语言冒泡排序: /* * 冒泡排序 */ public class BubbleSort {   public static void main(String[] args) {     int[] arr={1,4,2,-4,6,22,8,-9,-88,0,56,437,97,-356,666,-8};     System.out.println("排序前数组为:");

98k 1673

sql server安装并SSMS连接

  SQL Server是一种广泛应用于网络业务数据处理的关系型数据库管理系统。SQL Server 2016是微软公司研发的新一代旗舰级数据库和分析平台,突出高级分析和丰富可视化,并融合了关键创新功能。其可提供对企业基础架构最高级别的支持,专门针对关键业务应用的多种功能与解决方案提供最高级别的可用性,并提供更多、更全面的功能以满足不同人群对数据的需求,包括支持来自不同网络环境的数据交互、全面的自助分析等创新功能。百度搜索sql server,在官网下载 地址是:SQL Server 下载| Microso

jiankang66的博客 5186

scala冒泡排序

scala中的冒泡排序 排序原理 1、拿第一个去和后面的n-1进行比较,每次都将最小的放在第一位 2、拿第二个和后面的n-2进行比较,每次都将最小的放在第一位 3、依此类推。。。。。。 例子:10,9,8,7,6,5,4,3,2,1,0 下面是每一步的排序结果: 10 9 8 7 6 5 4 3 2 1 0 9 10 8 7 6 5 4 3 2 1 0 8 10 9 7 6 5 4 3 2 1 0 7 10 9 8 6 5 4 3 2 1 0 6 10 9 8 7 5

鸿爸爸 1440

工业模型导入Unity实战:从ProE/SolidWorks到实时渲染的完整流程

在工业仿真、数字孪生和VR/AR应用开发中,将高精度工程模型导入实时渲染引擎是一个常见的技术挑战。其核心原理在于参数化工程软件与实时渲染引擎的数据结构差异:前者基于精确的B-rep边界表示和特征树,后者依赖轻量化的三角网格与材质贴图。这一转换的技术价值在于实现工程数据的可视化与交互化,为产品展示、虚拟培训和工厂仿真等应用场景提供基础。通过数据翻译与优化流程,特别是利用3ds Max或Blender作为中转站进行网格优化与UV展开,能够有效解决模型破面、材质丢失和性能问题。本文聚焦于ProE(Creo)和So

weixin_33050117的博客 344

汽车OTA 测试用例

汽车OTA 测试用例

天赐好车的博客 975

scala 数组冒泡排序 测试

scala 数组冒泡排序 测试

三月的博客 624

【AI编程】Claude Code 最强AI 编程利器项目实战详解

Claude Code 最强AI 编程利器项目实战详解

congge 7397

scala冒泡排序代码

我的scala冒泡排序代码如下:object BubbleSort {def bubbleSort(arr: Array[Int]): Unit = {for(i ← 0 until arr.length - 1; j ← 0 until arr.length - 1 - i) {if (arr(j) > arr(j + 1)) {val tmp = arr(j)arr(j) = arr(j...

weixin_42584586的博客 192

【OpenClaw企业级智能体实战】第13篇:1+N架构实战!OpenClaw多Agent数字员工军团搭建指南(含完整配置+路由策略+代码落地)

单Agent因“记忆负担重、Token消耗高、响应不精准”已难以满足复杂场景需求,而多Agent团队通过“1个编排者+N个执行者”的分工协作模式,能让效率提升300%以上。本文基于OpenClaw 2026稳定版,结合阿里云开发者社区实战案例,从核心认知、准备工作、实操流程、协作机制、安全配置五大维度,完整拆解多Agent团队搭建全流程。文中包含可直接复制执行的代码、详细配置模板、路由策略设置及常见问题排查,新手可在1-2小时内落地属于自己的“数字员工”军团,覆盖内容创作、技术支持、多平台运营等多场景。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 745

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

scala循环嵌套实现冒泡排序

------------我主要是记录一下怕自己忘了scala的一些语法细节,冒泡太简单了,还望大家勿嫌弃 没啥说的直接上代码 /** * 冒泡排序 * 这是排序算法中最简单的一个算法了,我会用scala来写 * 主要思路: * 1 每两个进行比较,找到大的放在后面 * 2 重复1中的操作,直至找到最大的,然后固定位置不在变化 * * 如果还不清楚的可以在 https...

Braylon的博客 400

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

用scala 写冒泡排序

排序原理: 第一轮排序,会拿第一个数去和后面n-1 个数 进行比较,直至将最小的数排到第一位; 第二轮会拿第二个数和后面的n-2个数进行比较,直至将 n-2个数中最小的数排到第二位 第三轮 依次类推。。。 代码实现: bject function_01 { def main(args: Array[String]): Unit = { val array=Array(10,9,8,7) bSort(array) } def bSort(arr: Array[Int]): Unit

下山化缘的DJ 587

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

用scala实现改进的冒泡排序代码

object MaoPaoPaiXu { def main(args: Array[String]): Unit = { println("*******************冒泡排序********************") val a=Array(103,101,1,2,3,216,5,666,7,8,9,10,11,12,13,14,1516,16) // val a=Array(1,2,3,4,5,6,7,8,9) // val a=Array(111,110,1...

duyicd的专栏 594

scala :冒泡排序

package algorithm import scala.collection.mutable.ListBuffer object BubbleSort { def main(args: Array[String]): Unit = { val a = ListBuffer(1, 2, 3, 10, 100, 19999, -1998, 9, 234, 234, 9, 4...

bymain的博客 514

Scala实现冒泡排序

/* 1.From small to large -&gt;Ascending order */ package LittleLawson object BubbleSort{ def main(args: Array[String]): Unit = { var disorderData = Array(7,3,5,2,9,4) println("diorderData....

说文科技,做有态度的研究。 4284

scala 排序算法 冒泡排序

package com.xing.listfile /** * Created by DengNi on 2017/2/23. */ object OrderBubbleSort extends App { val sortArray = Array(49,38,65,97,76,13,27,49,78,34,12,64,5,4,62...

149

冒泡排序--基于scala实现

冒泡排序详解 原理 冒泡排序(Bubble Sort)也是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢"浮"到数列的顶端。 算法步骤 从第一个元素开始比较相邻的元素,如果第一个比第二个大,就交换. 对每一对相邻的元...

菜鸡的博客 1031
上一篇: scala 插入排序
下一篇: scala 选择排序
BMS上位机
博客等级 码龄12年 277粉丝 14原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值