[Go] Golang练习项目-GO实现冒泡排序以及优化算法
时间:2022-07-23
本文章向大家介绍[Go] Golang练习项目-GO实现冒泡排序以及优化算法,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
核心原理:
比较相邻的两个元素,较大的一个交换移动到右边
优化:
已经排好序的元素不再进行比较,减少比较次数
下面函数的变量flag 用于判断后续元素有无发生交换,没有发生交换的直接停止遍历
变量lastSwapIndex ,记录最后一次发生交换的位置,后续元素不再进行比较
//冒泡排序
func BubbleSort(arr *[]int){
flag:=true
lastSwapIndex:=0
for i:=0;i<len(*arr)-1;i++{
sortBorder:=len(*arr)-1-i
for j:=0;j<sortBorder;j++{
if (*arr)[j]>(*arr)[j+1]{
temp:=(*arr)[j]
(*arr)[j]=(*arr)[j+1]
(*arr)[j+1]=temp
flag=false
lastSwapIndex=j
}
}
sortBorder=lastSwapIndex
if flag{
break
}
}
}
- React Native 使用react-native-image-picker库实现图片上传功能
- 再谈Android动态链接库
- React Native之Permissions权限适配
- React Native项目实战之fetch请求并填充界面
- CocoaPods使用详解
- 2018年伊始,系统编程语言Rust为何令程序员感到兴奋?
- React Native项目实战之搭建美团个人中心界面
- React Native动画Animated详解
- iOS动画总结
- React Native之react-native-scrollable-tab-view详解
- iOS 本地轻量级数据存储之NSUserDefaults
- Android Studio配置Kotlin环境
- Android 应用安装过程分析
- React Native之TextInput组件实现联想输入
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- FTP文件管理项目(本地云)项目日报(八)
- FTP文件管理项目(本地云)项目日报(七)
- FTP文件管理项目(本地云)项目日报(六)
- Transformers Assemble(PART I)
- FTP文件管理项目(本地云)项目日报(五)
- 几个Python“小伎俩”
- FTP文件管理项目(本地云)项目日报(四)
- BERT源码分析(PART I)
- FTP文件管理项目(本地云)项目日报(二)
- FTP文件管理项目(本地云)项目日报(一)
- 【奇技淫巧】-- 朋友圈(并查集)
- 【奇技淫巧】-- 岛屿的最大面积
- LeetCode精选好题(三)
- 【LeetCode两题选手】算法类题目(7.29)
- 【LeetCode两题选手】算法类题目(7.27)