算法
morris131
这个作者很懒,什么都没留下…
展开
-
冒泡排序-java实现
1. 冒泡排序1.1. 算法的原理1) 比较相邻的元素。如果第一个比第二个大,就交换他们两个。2) 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。3) 针对所有的元素重复以上的步骤,除了最后一个。4) 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比原创 2014-11-18 21:18:29 · 4335 阅读 · 7 评论 -
java实现插入排序
1.1. 算法思想直接插入排序是一种简单的插入排序法,其基本思想是:把待排序的纪录按其关键码值的大小逐个插入到一个已经排好序的有序序列中,直到所有的纪录插入完为止,得到一个新的有序序列插入排序的算法思路:(1)设置监视哨r[0],将待插入纪录的值赋值给r[0];(2)设置开始查找的位置j;(3)在数组中进行搜索,搜索中将第j个纪录后移,直至r[0].key≥r[j].key为原创 2015-02-13 20:32:50 · 5291 阅读 · 5 评论 -
java实现选择排序
1.1. 算法思想对比数组中前一个元素跟后一个元素的大小,如果后面的元素比前面的元素小则用一个变量k来记住他的位置,接着第二次比较,前面“后一个元素”现变成了“前一个元素”,继续跟他的“后一个元素”进行比较如果后面的元素比他要小则用变量k记住它在数组中的位置(下标),等到循环结束的时候,我们应该找到了最小的那个数的下标了,然后进行判断,如果这个元素的下标不是第一个元素的下标,就让第一个元素跟原创 2015-02-13 20:26:40 · 5301 阅读 · 5 评论 -
java使用数组实现队列
1.1. 队列的数据结构队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。1.2. Java实现QueueTestpackage ch04; public class QueueTe原创 2015-02-14 10:42:16 · 12344 阅读 · 6 评论 -
java用数组实现栈
1.1. 栈的数据结构栈是一种先进后出的数据结果,只能在一端(称为栈顶(top))对数据项进行插入和删除。1.2. Java实现StackTestpackage ch04; public class StackTest { public static void main(String[] args) { Arra原创 2015-02-14 10:10:14 · 15699 阅读 · 6 评论 -
java使用数组实现优先级队列
1.1. 优先级队列的数据结构如果我们给每个元素都分配一个数字来标记其优先级,不妨设较小的数字具有较高的优先级,这样我们就可以在一个集合中访问优先级最高的元素并对其进行查找和删除操作了。这样,我们就引入了优先级队列这种数据结构。 优先级队列(priorityqueue)是0个或多个元素的集合,每个元素都有一个优先权,对优先级队列执行的操作有(1)查找(2)插入一个新元素(3)删除一般情况下,原创 2015-02-14 11:06:25 · 7009 阅读 · 6 评论