
java
只为心中梦
喜欢编程,喜欢探索,欢迎大佬们提意见
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
面试---算法排序(3)(希尔排序)
shell排序: 严格来说基于插入排序的思想,又称希尔排序或者缩小增量排序 流程: ①将有n 个元素的数组分成n/2个数字序列,第1个数据和第n/2+1个数据为1对,第2个数据和第n/2+2个数据为一对…. ②一次循环使每一个序列队排好顺序 ③然后,再变为n/4个序列,再次排序 ④不断重复上述过程,随着序列减少最后变成一个,也就完成了整个排序代码展示:package third;pub原创 2017-07-30 12:09:35 · 539 阅读 · 0 评论 -
面试---算法排序(4)(选择排序)
选择排序 流程: ①首先从原始数组中选择最小的1个数据,将其和位于第1个位置的数据交换 ②接着从剩下的n-1个数据中选择次小的1个数据,将其和第2个位置的数据交换 ③然后不断重复上述过程代码展示:package third;import java.util.ArrayList;public class xz {public static void xz(int a[]){ for(原创 2017-07-30 16:09:12 · 355 阅读 · 0 评论 -
面试--算法排序(5)(堆排序)
堆排序也是选择排序的一种 堆的定义: 如果有一个关键码K={k1,k2,k3…..}把他的所有元素按照完全二叉树的顺序存储方式放在一个一维数组中。并且满足 ki<=k2i且ki<=k2i+1//小根堆 ki>=k2i且Ki>=K2i+1//大根堆 小根堆效果图: 大根堆效果图 堆排序: 若在输出堆栈的最大值之后,使得剩余n-1个元素的序列又建成一个堆,则得到n个元素中的次大值,如此反原创 2017-07-30 17:32:28 · 386 阅读 · 0 评论