算法
GoslingJ
一个学了又忘且不勤奋的搬砖工人
展开
-
归并排序 java代码实现
归并排序首先呢 归并排序是一个分而治之的思想,归并可以理解为先递归,再归并;它的排序就是解决小段的问题 再解决稍大的问题,最后解决排序问题。和希尔排序有点像,归并是切割成单个,而希尔是变成列,都是最后再合并,像排序都是大同小异吧。快速排序比归并排序快,但是数据百万级的时候,归并更快。流程1.一个分割函数,一个排序归并函数, 递归一个数组切割,len/2,这样就分为左右两边,所以要不断对左右两...原创 2020-04-24 17:03:05 · 214 阅读 · 0 评论 -
希尔排序 java代码实现
希尔排序希尔排序就是高级版的插入排序,还挺快的。它首先是将一个数组构建成多个列,就想堆排序需要先构建成二叉树一样,但是这个列 是自己想的 虚拟的 不会实质性的去改变数组的结构。然后循环每列,将每列的数都进行排序,按递增或递减排序当每列的值都排序好了,就再改变列数,就有点像插入排序了,看谁比这个数适合在哪儿循环完成后 当列数只有1的时候就完成了排序比如最开始数组的长度为10 那么构...原创 2020-04-21 16:21:12 · 540 阅读 · 0 评论 -
堆排序 java代码实现
堆排序(以大顶堆 升序为例为例)没有图,就是根据自己理解理清最简单得思路首先是要明确 大顶堆 小顶堆大顶堆:每个节点都大于或等于左右子节点(升序用它!)小顶堆:每个节点都小于或等于左右子节点(降序用它!)先说过程:创先两个方法,一个用来调整二叉树的结构,一个是用来排序在调整中,取得是左右节点最大得节点和需要调整节点做判断等二叉树满足条件后,就开始排序,将第一个点放到最后,...原创 2020-04-20 17:58:03 · 165 阅读 · 0 评论 -
简单实现 暴力字符串查找
解决问题是字符串匹配子字符串问题方法一 暴力字符串查找:public static int search1(String target,String txt){ int tgL = target.length(); int txtL = txt.length(); for(int i = 0; i <= txtL-tgL; i++ ){...原创 2020-03-26 16:23:56 · 267 阅读 · 0 评论