【Java】Java中几种排序算法
发布日期:2021-06-29 20:54:42
浏览次数:3
分类:技术文章
本文共 1937 字,大约阅读时间需要 6 分钟。
package javaArray;import java.sql.Date;public class A2 { public static void main(String[] args) { int a[] = new int[5]; Date[] days = new Date[3]; System.out.println(a[3]); System.out.println(days[2]); int[] data = new int[] {3, 9, 2, 8, 7, 0, 4, 6, 5, 1}; showArray(data); bubbleSort(data); showArray(data); selectSort(data); showArray(data); insertSort(data); showArray(data); } /** * showArray * @param data */ public static void showArray(int[] data) { for (int i = 0; i < data.length; i++) { System.out.print(data[i] + " "); } System.out.println(); } /** * bubbleSort * @param a */ public static void bubbleSort(int[] a) { int len = a.length; for (int i = 0; i < len - 1; i++) { for (int j = 0; j < len - i - 1; j++) { if (a[j] > a[j + 1]) { a[j] ^= a[j + 1]; a[j + 1] ^= a[j]; a[j] ^= a[j + 1]; } } } } /** * selectSort * @param a */ public static void selectSort(int[] a) { int len = a.length; for (int i = 0; i < len - 1; i++) { int tmp = i; for (int j = i + 1; j < len; j++) { if (a[tmp] < a[j]) { tmp = j; } } if (tmp != i) { a[tmp] ^= a[i]; a[i] ^= a[tmp]; a[tmp] ^= a[i]; } } } /** * insertSort * @param a */ public static void insertSort(int[] a) { for (int i = 1; i < a.length; i++) { for (int j = i; j > 0; j--) { if (a[j] < a[j - 1]) { a[j] ^= a[j - 1]; a[j - 1] ^= a[j]; a[j] ^= a[j - 1]; } else { break; } } } } }
/** * * @param a * @param num * @return */ public static int binarySearch(int[] a, int num) { int start = 0; int end = a.length - 1; int mid = (start + end) / 2; if (a.length == 0) return -2; while(start <= end) { if (a[mid] > num) { end = mid - 1; mid = (start - end) / 2; } else if (a[mid] < num) { start = mid + 1; mid = (start + end) / 2; } else { return mid; } } return -1; }
转载地址:https://dengjin.blog.csdn.net/article/details/41311659 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
初次前来,多多关照!
[***.217.46.12]2024年04月30日 13时32分21秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
python drf 小程序 微信支付 退款 逻辑加代码
2019-04-30
odoo14 rpc 链接报错 容易出错怎样解决
2019-04-30
python os 怎样使用 读取一个文件中所有图片的名称
2019-04-30
python 图片转化为base64
2019-04-30
小程序支付 xml拼接 和生成 sign签名 代码
2019-04-30
python pandas excle 把两列合并新的一列
2019-04-30
odoo 中 tree中的字段隐藏 排序等
2019-04-30
有道翻译 爬虫 讲解 和 代码
2019-04-30
python中 .py 文件打包成 .exe可执行文件
2019-04-30
Ubuntu 安装虚拟环境 安装python 3.7配置等
2019-04-30
【使用技巧】VS2017避免全部安装至C盘
2019-04-30
【使用技巧】Pycharm需要配置脚本路径(Script Path)
2019-04-30
【语句总结】Python的三种列表拷贝方式
2019-04-30
【使用技巧】青铜级网络防钓鱼指南
2019-04-30
Java的安装和环境配置
2019-04-30
IDEA的下载和配置
2019-04-30
【概念理解】typedef-Lnode-*Linklist
2019-04-30
【概念理解】gluOrtho2D和glViewport的作用&窗口与显示的关系
2019-04-30
【语句总结】OpenGL的一些语句
2019-04-30