JavaScript算法---基础排序类
<html>
<script>
//正序排序,把大的放到最后,arr[j]>arr[j+1]
let fz=(arr)=>{
for(let len=arr.length-1,i=len,tmp;i>0;i--){
for(let j=0;j<i;j++)
if(arr[j]>arr[j+1]){
tmp=arr[j]
arr[j]=arr[j+1]
arr[j+1]=tmp
}
}
return arr
}
//倒序排序,把大的放前面,小的放后面,arr[j+1]>arr[j]
let fd=(arr)=>{
for(let i=arr.length-1,tmp;i>0;i--){
for(let j=0;j<i;j++){
if(arr[j+1]>arr[j]){
tmp=arr[j]
arr[j]=arr[j+1]
arr[j+1]=tmp
}
}
}
return arr
}
//选择排序,标记一个最小值
let fs = (arr)=>{
for(let i=0,len=arr.length,min;i<len;i++){
min=arr[i]
for(let j=i+1;j<len;j++){
if(min>arr[j]){
let c=min;
min=arr[j]
arr[j]=c
}
}
arr[i]=min
}
return(arr)
}
console.log(fz([4,3,8,6,7,1,0]))
console.log(fd([4,3,8,6,7,1,0]))
console.log(fs([10,-1,4,3,8,6,7,1,0]))
</script>
</html>
<html><script>//正序排序,把大的放到最后,arr[j]>arr[j+1]let fz=(arr)=>{for(let len=arr.length-1,i=len,tmp;i>0;i--){for(let j=0;j<i;j++)if(arr[j]>arr[j+1]){tmp=arr[j]arr[j]=arr[j+1]arr[j+1]=tmp}}return arr}//倒序排序,把大的放前面,小的放后面,arr[j+1]>arr[j]let fd=(arr)=>{ for(let i=arr.length-1,tmp;i>0;i--){ for(let j=0;j<i;j++){ if(arr[j+1]>arr[j]){ tmp=arr[j] arr[j]=arr[j+1] arr[j+1]=tmp } } }return arr}//选择排序,标记一个最小值let fs = (arr)=>{for(let i=0,len=arr.length,min;i<len;i++){min=arr[i]for(let j=i+1;j<len;j++){if(min>arr[j]){let c=min;min=arr[j]arr[j]=c}}arr[i]=min}return(arr)} console.log(fz([4,3,8,6,7,1,0])) console.log(fd([4,3,8,6,7,1,0])) console.log(fs([10,-1,4,3,8,6,7,1,0]))</script></html>
JavaScript算法---基础排序类的更多相关文章
- JavaScript算法实现——排序
在计算机编程中,排序算法是最常用的算法之一,本文介绍了几种常见的排序算法以及它们之间的差异和复杂度. 冒泡排序 冒泡排序应该是最简单的排序算法了,在所有讲解计算机编程和数据结构的课程中,无一例外都会拿 ...
- <算法基础><排序>三种高级排序——快速排序,堆排序,归并排序
这三种排序算法的性能比较如下: 排序名称 时间复杂度(平均) 时间复杂度(最坏) 辅助空间 稳定性 快速排序 O(nlogn) O(n*n) O(nlogn) 不稳定 堆排序 O(nlogn) O(n ...
- JavaScript算法实现排序
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- Java面试宝典系列之基础排序算法
本文就是介绍一些常见的排序算法.排序是一个非常常见的应用场景,很多时候,我们需要根据自己需要排序的数据类型,来自定义排序算法,但是,在这里,我们只介绍这些基础排序算法,包括:插入排序.选择排序.冒泡排 ...
- 6种基础排序算法java源码+图文解析[面试宝典]
一.概述 作为一个合格的程序员,算法是必备技能,特此总结6大基础算法.java版强烈推荐<算法第四版>非常适合入手,所有算法网上可以找到源码下载. PS:本文讲解算法分三步:1.思想2.图 ...
- 十大基础排序算法[java源码+动静双图解析+性能分析]
一.概述 作为一个合格的程序员,算法是必备技能,特此总结十大基础排序算法.java版源码实现,强烈推荐<算法第四版>非常适合入手,所有算法网上可以找到源码下载. PS:本文讲解算法分三步: ...
- javascript数据结构与算法--高级排序算法
javascript数据结构与算法--高级排序算法 高级排序算法是处理大型数据集的最高效排序算法,它是处理的数据集可以达到上百万个元素,而不仅仅是几百个或者几千个.现在我们来学习下2种高级排序算法-- ...
- php四种基础排序算法的运行时间比较
/** * php四种基础排序算法的运行时间比较 * @authors Jesse (jesse152@163.com) * @date 2016-08-11 07:12:14 */ //冒泡排序法 ...
- JavaScript写一个表格排序类
依稀记得那是上个星期六的下午,我参加了网易暑期实习生招聘笔试.考得相当糟糕,编程题3个题通过了2个,简答题没做对,选择题貌似是20个题猜了6-7个,99%是挂了,唉唉唉!生活不只眼前的苟且,学习的脚步 ...
- Java基础系列--基础排序算法
原创作品,可以转载,但是请标注出处地址:https://www.cnblogs.com/V1haoge/p/9082138.html 一.概述 基础排序算法包括:桶排序.冒泡排序.选择排序.插入排序等 ...
随机推荐
- Spring Bean 的一生
Spring Bean 的一生包括其从创建到消亡的整个过程: 实例创建 => 填充 => 初始化 => 使用 => 销毁. 这里需要注意的是,从 bean 实例的创建到可以使用 ...
- WPF动画教程(PointAnimationUsingPath的使用)
PointAnimationUsingPath的介绍 PointAnimationUsingPath 是 WPF 中的一个类,它用于创建一个动画,该动画会沿着指定的路径移动一个点. 关于 PointA ...
- #交互,分类讨论#CF1292E Rin and The Unknown Flower
题目传送门 分析 先尝试锁定一个字母,显然询问 \(CH,CO,CC\) 会比直接询问 \(C\) 更优,虽然牺牲了最后一个位置是否为 \(C\) 的查询. 同理,询问 \(HH,OH,CH\) 会比 ...
- [P4551] 最长异或路径 题解
过程 手写利用DFS求出每个点到根节点的异或距离 不难得出 xor_dis[x][y]=xor_dis[0][x]^xor_dis[0][y] 于是树上异或问题转换成了Trie上异或问题. 代码 直接 ...
- 为 Hugging Face 用户带来无服务器 GPU 推理服务
今天,我们非常兴奋地宣布 部署到 Cloudflare Workers AI 功能正式上线,这是 Hugging Face Hub 平台上的一项新服务,它使得通过 Cloudflare 边缘数据中心部 ...
- os.path.splitext
os.path.splitext是Python标准库中的一个函数,它可以将一个文件路径拆分成两部分:文件名和文件扩展名.例如: 点击查看代码 import os file_path='avercrop ...
- 【译】Visual Studio 中的 GitHub Copilot:2023年回顾
在快速发展的软件开发世界中,保持领先是至关重要的.在 Visual Studio 中引入AI,特别是 GitHub Copilot,已经彻底改变了开发人员的编码方式.通过将 Copilot 集成到 V ...
- 报名直达丨HarmonyOS开发者创新大赛线下城市交流会来了,约吗?
HarmonyOS开发者创新大赛线下城市交流会 正式开启啦! 在这里,将有专业的讲师 与HarmonyOS开发者们面对面演示开发实操.交流开发心得 还等什么?赶快扫码报名吧~↓↓↓ 城市交流会报名链接 ...
- CS101
Turing machine:图灵机 理论上可以计算任何东西 CPU(Center Process Unit):中央处理器 是现代电脑的"大脑",其中包含数十亿细小开关的硅片,即晶 ...
- CentOS下修改 MySQL 的密码
做服务器运维,修改 MySQL 的密码是经常的需要,定期修改 MySQL 密码是网站安全的一个保证.这里记录一下修改 MySQL 密码的一些命令,方便以后查看. 修改root密码 CentOS 下 M ...