插入排序二分排序冒泡排序
来源:互联网 发布:扫地机器人算法 编辑:程序博客网 时间:2024/06/09 23:51
import java.util.Scanner;public class BinarySorted{ public static void main(String args[]){ Scanner sc = new Scanner(System.in); System.out.println("请问你要输入几个数字"); int n = sc.nextInt(); int[] array = new int[n]; StringBuilder sb = new StringBuilder(); sb.append("["); System.out.println("请分别输入数组"); for(int i = 0;i < n;i ++){ array[i] = sc.nextInt(); sb.append(array[i]); sb.append(","); } sc.close(); sb.deleteCharAt(sb.length() - 1); sb.append("]"); System.out.println("原始数组为"+sb.toString()); int[] array1 = array; System.out.println("插入排序法如下"); insertSorted(array1); for(int i = 0;i < array1.length;i ++){ System.out.println(array1[i]); } int[] array2 = array; System.out.println("冒泡排序如下"); bubbleSorted(array2); for(int i = 0;i < array2.length;i ++){ System.out.println(array2[i]); } int[] array3 = array; System.out.println("二分排序法如下"); binarySorted(array3); for(int i = 0;i < array3.length;i ++){ System.out.println(array3[i]); } } //二分排序法 public static void binarySorted(int[] array){ for(int i = 1;i < array.length;i ++){ int low = 0; int high = i - 1; while(low < high){ int mid = (low + high) / 2; if(array[i] > array[mid]) low = mid + 1; else if(high > 0) high = mid - 1; } if(array[(low + high) / 2] > array[i]){ int temp = array[i]; for(int j = i;j > (low + high) / 2;j --){ array[j] = array[j - 1]; } array[(low + high) / 2] = temp; } } } //插入排序法 public static void insertSorted(int[] array){ for(int i = 1;i < array.length;i ++){ for(int j = i - 1;j >= 0;j --){ if(array[j + 1] < array[j]){ int temp = array[j + 1]; array[j + 1] = array[j]; array[j] = temp; } } } } //冒泡排序法 public static void bubbleSorted(int[] array){ for(int i = 0;i < array.length - 1;i ++){ for(int j = 0;j < array.length - i - 1;j ++){ if(array[j] > array[j + 1]){ int temp = array[j]; array[j] = array[j + 1]; array[j + 1] = temp; } } } }}
0 0
- 插入排序二分排序冒泡排序
- 冒泡排序,插入排序,二分查找
- 选择排序,冒泡排序,二分搜索,插入排序,归并排序
- 冒泡排序,选择排序,直接插入排序,二分查找排序
- 冒泡排序,改进型冒泡排序,插入排序,二分查找
- 插入排序、二分插入排序、希尔排序、选择排序、冒泡排序、鸡尾酒排序、快速排序、堆排序、归并排序
- 经典算法:二分查找、插入排序、选择排序、冒泡排序
- 经典算法:二分查找、插入排序、选择排序、冒泡排序
- 经典算法:二分查找、插入排序、选择排序、冒泡排序
- 冒泡排序 插入排序
- 冒泡排序,插入排序
- 插入排序&&冒泡排序
- 冒泡排序,插入排序
- 冒泡排序、插入排序
- 冒泡排序,插入排序
- 排序-----------------插入排序,冒泡排序
- 常见排序集合(冒泡排序,选择排序,直接插入排序,二分插入排序,快速排序,希尔排序,归并排序)
- 直接插入排序、二分插入排序、希尔排序、冒泡排序与简单选择排序
- 设计模式-适配器模式
- 《剑指offer》——二叉搜索树的后序遍历序列
- 汇智慧网-Angular2
- wordpress IP黑名单插件:IP Blacklist Cloud屏蔽攻击者IP让网站更安全
- 文章关键词提取算法
- 插入排序二分排序冒泡排序
- Sicily 1530. The Seven Percent Solution
- 设计模式-桥接模式
- Git基本常用命令
- File and Print Services for Microsoft® Windows® Clients (Samba)
- if eles 问题
- 遍历map效率最高的方法
- 添加xib 子控件约束
- 个人总结3