排序算法之 二分法排序

排序算法之 二分法排序之所以单独来二分法排序 是因为近些天一直在做二分法查找的问题 延伸只二分法排序 做此记录 以便于以后记忆 首先了解下二分法的思想 对于区间 a b 上连续不断且 f a f b lt 0 的函数 y f x 通过不断地把函数 f x 的零点所在的区间一分为二 使区间的两个端点逐步逼近零点 进而得到零点近似值的方法叫二分法 个人理解二分法排序就是利用二分法查找结合插入

int[] arr = { 
  49, 38, 65, 97, 76, 13, 27, 49, 78, 34, 12, 64, 1}; for (int i = 1; i < arr.length; i++) { int temp = arr[i]; //要插入的第i个元素 int low = 0; int high = i - 1; //插入目标元素的前 i-1 个元素 int mid = -1; while (low <= high) { mid = low + (high - low) / 2; if (arr[mid] > temp) { high = mid - 1; } else { // 元素相同时,也插入在后面的位置 low = mid + 1; } } // 目标位置 之后的元素 整体移动一位 for(int j = i - 1; j >= low; j--) { arr[j + 1] = arr[j]; } arr[low] = temp; } for (int i = 0; i < arr.length ; i++) { System.out.print(arr[i]+" "); }
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/230026.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月16日 下午3:18
下一篇 2026年3月16日 下午3:18


相关推荐

  • C语言数组初始化

    C语言数组初始化转载博客代码编译运行环境:VS2017+Win32+Debug1.字符数组的初始化方式C语言中表示字符串有两种方式,数组和指针,字符数组是我们经常使用的方式。变量的定义包括指明变量所属类型、变量名称、分配空间以及初始化。可以看出,变量的初始化是变量定义的一部分。除了const变量需要显示初始化以外,其它变量如果在定义时未显示初始化,编译器会为变量以默认…

    2022年7月18日
    21
  • 手把手教你在本地部署 OpenClaw,并低成本接入飞书智能 Agent!

    手把手教你在本地部署 OpenClaw,并低成本接入飞书智能 Agent!

    2026年3月13日
    2
  • java中解析json格式数据

    今天在项目中需要接收json格式数据进行数据库保存,长时间没有使用json格式的数据,今天突然用到还有写棘手,现在我来写一下在java中解析json格式数据的代码publicvoidsaveData(){jsonData= {“TSR_TOTAL”:1,”TSR_ITEMS”:[{“UDID”:”1″,”major”:”a”,”minor”:”1″}{“UDID”:”2″,”majo

    2022年4月6日
    424
  • 领导含泪叮嘱我:MySQL 建表字段记得用 not null,不然就收拾包袱滚蛋

    领导含泪叮嘱我:MySQL 建表字段记得用 not null,不然就收拾包袱滚蛋上午我收到一条短信,内容是“尊敬的null你好,XXX”,当时我就笑了。真是外行看热闹,内行看门道,这是程序员都能Get的笑点,说明程序没有正确从数据库获取到我的姓名,然后把空值格式化为了null。

    2022年6月14日
    20
  • 阿里吴建军:千问AI眼镜月底将上线“AI办事”等更多功能

    阿里吴建军:千问AI眼镜月底将上线“AI办事”等更多功能

    2026年3月15日
    3
  • DotNetBar布局(一)

    DotNetBar布局(一)相信大家搞 NET 桌面程序开发都会用到一些界面布局的组件 常用的由 DotNetBar 和 devexpress 今天主要将 DotNetBar 在项目中布局简单介绍一下 个人感觉这个控件还是有很多 bug 的 不知道什么时候就出现莫名奇妙的排版问题错误 比如突然在设计视图 DotNetBar 控件不能编辑了 又或者突然运行时界面布局是正确的 但是设计视图中控件位置或者属性发生莫名奇妙的变化 又或者由于电脑分辨率的

    2026年3月19日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号