java-algorithms-blog
java-algorithms-blog
算法
4 posts
java实现–如有错误欢迎提出!
Don't wanna be here? Send us removal request.
java-algorithms-blog · 8 years ago
Text
2017-11-01
不对自己狠一点,如何面临绝境?如何提升自己?如何适合生存?
0 notes
java-algorithms-blog · 8 years ago
Text
插入排序
直接插入排序
介绍:
  插入排序(Insertion Sort)的算法描述是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,通常采用in-place排序(即只需用到O(1)的额外空间的排序),因而在从后向前扫描过程中,需要反复把已排序元素逐步向后挪位,为最新元素提供插入空间。
步骤:
从第一个元素开始,该元素可以认为已经被排序
取出下一个元素,在已经排序的元素序列中从后向前扫描
如果该元素(已排序)大于新元素,将该元素移到下一位置
重复步骤3,直到找到已排序的元素小于或者等于新元素的位置
将新元素插入到该位置中
重复步骤2
效果图:
Tumblr media
代码实现:
Tumblr media
希尔排序
介绍:
  希尔排序,也称递减增量排序算法,是插入排序的一种高速而稳定的改进版本。
  希尔排序是基于插入排序的以下两点性质而提出改进方法的:
插入排序在对几乎已经排好序的数据操作时, 效率高, 即可以达到线性排序的效率
但插入排序一般来说是低效的, 因为插入排序每次只能将数据移动一位
效果图:
Tumblr media
代码实现:
Tumblr media
0 notes
java-algorithms-blog · 8 years ago
Text
排序基本概念
排序:将文件中的记录,按递增(减)的次序排列起来。
文件–被排序的对象
由若干个数据项(或域)组成。
关键字–排序运算的依据
数据项(或域)中用来标识排序的一类值。可以是数字类型也可以是字符类型。
例如:一个学校学生的成绩排名,则文件是所有的学生信息,关键字则是学生的成绩。
排序稳定性:
具有相同关键字的记录之间,经过排序后的相对次序保持不变,则排序稳定;否则,排序不稳定。
排序的操作:
比较关键字的大小。
改变指定方向的引用或移动记录本身。
0 notes
java-algorithms-blog · 8 years ago
Text
Algorithms-Sort
1.排序基本概念
2.插入排序
3.交换排序
4.选择排序
5.归并排序
6.分配排序
7.排序方法比较
来源:
http://student.zjzk.cn/course_ware/data_structure/web/paixu/paixu8.1.1.1.htm
0 notes