算法基础
文章平均质量分 50
千年祸害万年牢
这个作者很懒,什么都没留下…
展开
-
冒泡算法和简易桶排序算法实现
读书后的笔记和自己的实现,备忘 直接上代码 package com.joker.suanfa; /** * * @author Administrator * 本质,将N个数排序,需要n-1趟,每一趟每两个元素进行比较,每一次比较,将小的数进行往后排,则最后一位为最小的数,下一趟则不需要再比较 如 * 0,5,8,需走两趟,第一趟0 5 比较原创 2015-12-02 15:27:36 · 444 阅读 · 0 评论 -
快速排序的简易实现
package com.joker.suanfa; public class QuickLySort { /**快速排序 如果是按照从小到大进行排序,那么最后的结果应该是大的数字在右边,小的数字在左边。 * 实质步骤:1 选取一个基准值(如第一位source[0],然后从右往左(j=source的长度,j--)开始查找,发现小于基准的值之后,就停下来,定位到这一点 *原创 2015-12-08 09:04:08 · 340 阅读 · 0 评论 -
快速排序的深入理解
package com.joker.counts; public class FastSort { /** * 快速排序 * 原理,总体思路为 分而治之(递归) * 具体操作:选中一个元素为基数,以这个基数为参照,和每个元素相比较,通过交换位置,将比该基数大的元素放在数组尾部,比该基数小的元素放在数组头部。当已这个基数重新排序出来之后, * 数组分...原创 2018-10-11 17:02:38 · 362 阅读 · 0 评论 -
二分法理解
package com.joker.counts; /** * 二分法的原理为找到中间数,进行比较 * @author Joker *2018年10月11日 下午5:03:10 */ public class BinaryCount { public static void main(String[] args) { int [] counts = new int...原创 2018-10-11 17:20:34 · 562 阅读 · 0 评论 -
选择算法理解
package com.joker.counts; /** * 选择排序法: 原理是循环嵌套遍历数组,外层循环的数字和层循环的数字比较, 内循环找出最大或者最小的数字,和外循环的数字比较, 如果大于或者小于,便交换两者顺序。 这种排序时间复杂度为O(n*n) * @author Joker *2018年10月11日 下午5:26:41 */ public class SelectSort ...原创 2018-10-11 17:28:36 · 259 阅读 · 0 评论