java中选择排序,冒泡排序和二分法查找学习记录
来源:互联网 发布:网络店铺运营 编辑:程序博客网 时间:2024/06/03 21:12
就直接上代码了,要多思考才能搞得清楚,最近因为工作的事情耽误了好了,不能放弃啊!
选择排序,冒泡排序和二分法查找数据
/** * main 函数 * * @param args */ public static void main(String[] args) { int[] m = new int[] { 2, 5, 1, 4, 6, 8, 7, 9, 8 }; System.out.print("选择排序的结果是:"); XuanzePaixu(m); for (int s : m) { System.out.print(s + " "); } System.out.println(); System.out.print("冒泡排序的结果是:"); MaoPaoPaixu(m); for (int s : m) { System.out.print(s + " "); } System.out.println(); System.out.print("二分查找的结果是:"); System.out.println(); int[] n = { 11, 22, 33, 44, 55, 66, 77, 88, 99 }; System.out.println("66下标是" + SecondChaZhao(n, 66)); System.out.println("101下标是" + SecondChaZhao(n, 101)); } /** * 选择排序:依次固定每个下标,让每个固定下标中的数和后面所有的数据进行比较 * * @param m * 需要排序的数据,按大到小排序 */ public static void XuanzePaixu(int[] m) { int n; for (int i = 0; i < m.length - 1; i++) { for (int j = i + 1; j < m.length; j++) { if (m[j] > m[i]) { n = m[j]; m[j] = m[i]; m[i] = n; } } } } /** * 冒泡排序:下标相邻的两个数进行排序 * * @param m * 需要排序的数据,按由小到大排序 * */ public static void MaoPaoPaixu(int[] m) { int n; for (int i = 0; i < m.length - 1; i++) { for (int j = 0; j < m.length - 1 - i; j++) { if (m[j] > m[j + 1]) { n = m[j]; m[j] = m[j + 1]; m[j + 1] = n; } } } } /** * 二分法排序,前提:被查找的数组是有序排列的,没有该数,默认返回-1 * * @param m * 被查找的数组数据 * @param key * 需要查找的数据 * */ public static int SecondChaZhao(int[] n, int key) { int min = 0, max = n.length - 1, mid; while (min <= max) { mid = (min + max) >> 1; if (key > n[mid]) min = mid + 1; else if (key < n[mid]) max = mid - 1; else return mid; } return -1; }
输出的结果为:
选择排序的结果是:9 8 8 7 6 5 4 2 1
冒泡排序的结果是:1 2 4 5 6 7 8 8 9
二分查找的结果是:
66下标是5
101下标是-1
0 0
- java中选择排序,冒泡排序和二分法查找学习记录
- Java的冒泡排序和二分法查找
- java选择排序,冒泡排序分析,附带二分法查找
- 冒泡排序、选择和插入排序、二分法查找
- 冒泡排序、直接选择排序、二分法查找
- Java 冒泡、选择、二分法排序
- 冒泡排序、选择排序、快速排序、二分法查找
- 冒泡排序、选择排序、插入排序以及二分法查找算法
- ************** 冒泡、选择排序二分法 **************
- Java中冒泡排序和选择排序
- java中选择排序和冒泡排序
- java中冒泡排序和选择排序
- 黑马程序员--选择排序、冒泡排序、二分法查找
- Java冒泡、选择排序以及二分法
- 笔试经常遇到的选择排序、冒泡排序和二分法查找
- Java基础—选择排序,冒泡排序和折半查找
- 基本算法简单实现-二分法查找、合并排序、冒泡排序、插入排序、选择排序、快速排序
- java 折半查找 冒泡排序 选择排序
- LeetCode:Best Time to Buy and Sell Stock
- openjudge 1.6 08:石头剪刀布
- 输出菱形,空心菱形
- Codeforces Round #362 (Div. 2)C. Lorenzo Von Matterhorn 二叉树结点规律
- Labview通过RS422通讯接口PC与下位机通信
- java中选择排序,冒泡排序和二分法查找学习记录
- Servlet---文件上传/打散目录/进度条
- 内核打印杂谈
- JHTP小结_第十一章_深入理解异常(Exception Handling)
- Can you solve this equation
- 理解YARN Scheduler
- Appium滑动
- CodeForces-610B-Vika and Squares
- 单链表