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

排序(二)【数据结构】

简单选择排序(选择排序 不稳定)

核心思想:

每一趟找到待排序序列中最小的值,以及找到待排序序列的第一个值进行交换
(即 每一趟就是找到待排序序列中的最小值,通过交换的方式放到第一个位置上)

特别注意:

代码实现中,本质是要找到他们的位置

时间、空间复杂度

时间复杂度:O(n^2)
空间复杂度:O(1)

代码实现

//选择排序voidSelect_Sort(intarr[],intlen){for(inti=0;i<len-1;i++){intminIndex=i;for(intj=i;j<len;j++){if(arr[j]<arr[minIndex])minIndex=j;}inttmp=arr[i];arr[i]=arr[minIndex];arr[minIndex]=tmp;}}

冒泡排序

核心思想:

每一趟从前向后两两比较,(递增)如果左边大于右边,则交换,反之不交换,当这一趟跑完之后,相当于最大值就被搬运到最后一个位置了

改进:

如何在一趟两两比较完成后就立刻得知其是否已经完全有序?放一个flag=0,若某一趟未交换则标记为1.

代码实现

//冒泡排序voidBubble_Sort(intarr[],intlen){for(inti=0;i<len-1;i++){intflag=0;for(intj=0;j<len-i-1;j++){if(arr[j]>arr[j+1]){inttmp=arr[j];arr[j]=arr[j+1];arr[j+1]=tmp;flag=1;}}if(flag==0)break;}}
http://www.jsqmd.com/news/494923/

相关文章:

  • 8个超硬核的大模型项目
  • WPS单元格格式
  • QGraphicView + QGraphicItem
  • 字节跳动 Seedance 2.0 全球发布受阻,AI 视频版权困境待解
  • C++比较三位数大小
  • 游戏数据助力配送机器人升级
  • LBM vs FVM:谁才是 CFD 的未来?
  • MSCOMCTL.OCX文件出错 免费下载修复方法分享
  • 快讯|智谱GLM-5-Turbo实测:面向OpenClaw深度优化,响应提速60%,token消耗减少17.8%
  • 渗透测试实战指南:从零基础到专业测试工程师的完整路径
  • Meta 收购爆火 AI 社交网络 Moltbook
  • 05樊珍
  • python运算符
  • 文件名批量重命名怎么按数字排序?6个简单技巧轻松搞定!
  • 用自己的声音实现PPT转视频加AI配音,小米坡PPT转视频工具v2.25操作教程
  • ASO优化服务商排名
  • 手把手教你免费获取豆包 AI API Key 并接入前端项目
  • 64 匠心古法雕塑源头工厂哪家实力强?
  • 天津守嘉陪诊 17310982305 - 品牌排行榜单
  • C语言从入门到进阶——第14讲:深入理解指针(4)
  • 2026工业园区数字孪生深度解析:视频孪生与大模型如何赋能智慧决策
  • 发芽Day2
  • 绝缘阻抗检测计算
  • 一秒推GEO中的DeepSeek收录技巧关键要素是什么?
  • 成都2026增值税法规变化要点:企业合规应对策略深度解析
  • SW - 干涉检查异常 - 要忽略隐藏的实体和零件才行
  • 别让几百万展位费,只换回一叠落灰的名片|这场展会,我们终于打赢了“时间战”
  • 从需求到实施:如何确认 RV1126 开发板适配您的硬件需求
  • 034B-基于51单片机贪吃蛇游戏机(LCD12864)【Proteus仿真+Keil程序+报告+原理图】
  • 图片尺寸不对?4个简单方法助你快速修改!