当前位置: 首页 > article >正文

排序算法的理解

排序算法借鉴了数学里面的不等式的思想

计算机不能直接继承不等式的传递性特征,这个时候才用递归调用去人为的分成不同的部分。或者说,一部分已经大致排序好的数放在一边,另外一边再排。

这是由于计算机只能两两比较数字才会出现的情况。它不能一下子记住所有数字的特征,除非认为的设计的算法。所以就只能人为构造不等式链条的传递。

计算机只能两两比较数字的这个特性是因为计算机底层机械设计的限制所导致的?但是具体要不要继续深入下去还有待考量。但是我想这是无需想太多的。应为 > + - * / 除了括号之外就都是两个两个的运算或者比较了,所以计算机只能两两比较数字的事情是板上钉钉的。(其实从计算机硬件上来理解也可以,就是没有那种可以保存一堆数字关系的装置,就连两个数之间都是每一位一一比较的)

桶排序——计算机自己的数据特点。或者说为了达到实现“记忆的效果”,其它排序算法都是直接在给的量上划分的,而桶排序反而用到了记忆的作用,把出现的按照“记忆中的”(数组)大小顺序(数组的下标)来放置。多的空是为了防止有新的。这样虽然简单但是要花费大量的记忆,就是“拿空间换想得少”。

希尔排序——多个不等式链的链接,但是简洁在一个地方解决排列,不像桶排序另外再来解决。

冒泡,单个一一比较的计算机本质加一个数字一劳永逸的穷举

插入,冒泡的改进

快速排序——二分递归隔开的计算机特质的认识


http://www.kler.cn/news/328879.html

相关文章:

  • 【ChatGPT】Python 实现计算两线段的变换矩阵
  • 解决Windows远程桌面 “为安全考虑,已锁定该用户账户,原因是登录尝试或密码更改尝试过多,请稍后片刻再重试,或与系统管理员或技术支持联系“问题
  • 师生健康监测系统:SpringBoot技术实践
  • Master PDF Editor 下载及详细安装教程
  • Codeforces Round 976 (Div. 2 ABCDE题)视频讲解
  • Django一分钟:使用prefetch_related避免陷入大量的查询中导致严重的性能问题
  • WebGL深究:动画与交互 —— 赋予虚拟世界生命与灵魂
  • YOLOv11尝鲜测试五分钟极简配置
  • SpringBoot整合JPA详解
  • 工控系统组成与安全需求分析
  • leetcode每日一题day21(24.10.1)——最低票价
  • Street View Synthesis with Gaussian Splatting and Diffusion Prior 学习笔记
  • 【Java SE 题库】移除元素(暴力解法)--力扣
  • 室内定位论文整理-20240925期
  • 计算机毕业设计党建学习网站查看发布党建评论留言搜索部署安装/springboot/javaWEB/J2EE/MYSQL数据库/vue前后分离小程序
  • 【SpringCloud】多机部署, 负载均衡-LoadBalance
  • 使用 Seaborn 热图的 5 种方法(Python 教程)
  • Vue+Flask
  • Pencils Protocol 全面推动市场,生态通证 DAPP 将持续通缩
  • 【数据结构初阶】排序算法(下)冒泡排序与归并排序
  • Jupyter Notebook 产生 jupyter_notebook_config.py 配置文件
  • Html jquery下拉select美化插件——selectFilter.js
  • C++网络编程之IP地址和端口
  • 看似容易赚钱的炒股真的赚钱吗
  • 行为设计模式 -模板方法模式- JAVA
  • 计算机毕业设计 养老院管理系统的设计与实现 Java实战项目 附源码+文档+视频讲解
  • 59 双向循环神经网络_by《李沐:动手学深度学习v2》pytorch版
  • 在2核2G服务器安装部署MySQL数据库可以稳定运行吗?
  • 武汉正向科技格雷母线公司,无人天车系统,采用格雷母线定位技术
  • 如何排查 Windows 无法连接ubuntu远程服务器