算法_排序
GZ-豆浆油条
嘿!今天的你 过得还好吗?
展开
-
冒泡排序
冒泡排序(BubbleSort):对相邻的元素进行两两比较,每一趟比较之后会将最小或者是最大的元素浮到顶端,最终达到完全有序。 时间复杂度为:O(n^2)示例代码:package dong.sort;public class BubbleSort { public static void main(String[] args) { Integer[] arr = {1,3,2,原创 2017-10-09 15:35:05 · 144 阅读 · 0 评论 -
归并排序
归并排序:先使每个子序列有序看,再使 子序列段 有序;将已有序的子序列合并,得到的完全的序列;若将两个有序表合并成一个有序表,称为二路归并。package dong.test;import java.util.Arrays;public class MergeSort { public static void Sort(int[] arr){ int length = arr.原创 2017-09-07 09:22:51 · 187 阅读 · 0 评论 -
二分查找
二分查找又称为折半查找优点:比较的次数少,查找的速度快,平均性能好 缺点:要求待查表示有序的,而且插入删除困难。因此折半查找方法不适合于经常变动的而查找频繁的有序表。二分查找首先要求数据是有序的,同时要求能随机访问数据元素, 有序数组可以, 链表不行,二分查找因为每次都是从中间点开始查找,所以最坏情况是目标元素存在于最边缘的情况。最坏为O(LogN)package dong.test;public原创 2017-10-09 10:22:30 · 232 阅读 · 0 评论 -
选择排序
基本思想:选择排序的原理是每次一从待排序的数据元素中找到最大(或者最小)的元素放到序列的起始位置,直到全部的待排序的数据元素排完。 实现代码public class test { public static void main(String[] args){ Integer[] arr = {10,9,3,1,4,2,7,8,6,5}; test.sort(原创 2017-08-23 22:22:36 · 201 阅读 · 0 评论 -
插入排序
基本概念: InsertionSort(插入排序):将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的有序数据;插入排序适合于少量的排序。时间复杂度为:O(n^2) 实例代码:package dong.sort; /** * 插入排序 * @author YIMA * */ public class InsertionSort { public static vo原创 2017-10-09 14:45:16 · 149 阅读 · 0 评论