自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 算法快学笔记(十八):史上最全查找算法总结

1. 简介 查找算是工作过程中运用最广泛的操作了,操作系统读取文件时需要查找,从数据库读取数据时需要查找… 本文将对常见的查找算法进行总结。 2. 常见算法 2.1 顺序查找 基本思想: 该算法简单粗暴,从头(或是最后)开始遍历,找到要查的数据就停止遍历并返回结果,如果遍历完也没有找到就是查找不成...

2019-11-15 11:57:33

阅读数 69

评论数 0

原创 算法快学笔记(十七):史上最全排序算法总结

1. 简介 本文对常见排序算法进行总结 2. 排序算法 2.1 冒泡排序 该算法比较简单,几乎所有语言涉及到算法时,都会涉及到冒泡算法。 算法思路: 比较相邻的元素。如果第一个比第二个大,就交换他们两个。 对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最...

2019-11-15 11:48:53

阅读数 172

评论数 0

转载 图解归并排序

基本思想   归并排序(MERGE-SORT)是利用归并的思想实现的排序方法,该算法采用经典的分治(divide-and-conquer)策略(分治法将问题分(divide)成一些小的问题然后递归求解,而治(conquer)的阶段则将分的阶段得到的各答案"修补"在一起,即分而...

2019-11-15 11:42:50

阅读数 4

评论数 0

转载 图解堆排序

预备知识 堆排序   堆排序是利用堆这种数据结构而设计的一种排序算法,堆排序是一种选择排序,它的最坏,最好,平均时间复杂度均为O(nlogn),它也是不稳定排序。首先简单了解下堆结构。 堆   堆是具有以下性质的完全二叉树:每个结点的值都大于或等于其左右孩子结点的值,称为大顶堆;或者每个结...

2019-11-15 11:15:09

阅读数 5

评论数 0

转载 图解算法---希尔排序(转载)

前情回顾:直接插入排序(对插入排序不熟悉的建议先阅读此文) 一天,一尘拿着扑克自己在那玩,刚被师傅看见了 首先它把较大的数据集合分割成若干个小组(逻辑上分组),然后对每一个小组分别进行插入排序,此时,插入排序所作用的数据量比较小(每一个小组),插入的效率比较高 可以看出,...

2019-11-15 10:38:18

阅读数 6

评论数 0

原创 算法快学笔记(十六):动态规划

1. 介绍 前文提到,对于背包问题与旅行商问题,计算的复杂度是随着计算数据的增加呈现指数级增长的,贪婪算法算可以处理,但得到的并不是最优解。 动态规划的主要思路是先解决子问题,在逐步解决大问题。本文将通过两个例子介绍动态规划的推算思路。 2. 背包问题 2.1 思路 通过动态规划方法解决背包问题的...

2019-11-13 17:14:31

阅读数 655

评论数 2

原创 算法快学笔记(十五):贪婪算法与NP完全问题

1. 贪婪算法 1.1 算法思路 贪婪算法的思想很简单:每步都采取最优的做法,以教室调度为例进行说明该算法步骤。 假设有以下课表,希望将尽可能多的课程安排在同一个教室: 由于不同课的开始与结束时间存在冲突,所以不可能把所有课放在一个教室上。使用贪心算法的解决思路如下: 选出结束最早的课,它是上...

2019-11-13 16:28:41

阅读数 151

评论数 0

原创 算法快学笔记(十四):图的最小生成树算法

1. 介绍 最小生成树的应用场景很广,例如电信公司需要将9个村庄进行网络连接,村庄间的距离都不相同,怎么连接才能达到成本最小了?村庄结构图如下: V0-V10分别表示村庄,节点间的权重代表距离,连接所有节点的总距离最小,就可以让成本更低。 定义:把构造连通整个图的最小代价生成树称为最小生成树。 ...

2019-10-24 15:37:34

阅读数 1906

评论数 1

原创 算法快学笔记(十三):狄克斯特拉(Dijkstra)算法原理与实现

1. 简介 广度优先算法可以找出段数最少的路径,但是对于路径上带权重的图,想要找出最快的路径,则需要使用狄克斯特拉算法。 2. 原理 为了说明狄克斯特拉算法的原理,使用换钢琴的的例子来做说明. 假设Rama想拿自己的乐谱换架钢琴: Alex说:“这是我最喜欢的乐队Destroyer的海报,我愿意...

2019-06-13 11:59:43

阅读数 314

评论数 0

原创 JanusGraph批量导入数据代码总结

这里写自定义目录标题说明1. Json导入到本地TinkerGraph1.1 配置1.2 样例Json1.3 代码1.4 文件校验2. CSV导入到本地TinkerGraph2.1 配置2.2 样例CSV2.3 代码2.4 文件校验3. Json导入到分布式存储(berkeleyje-es)3.1...

2019-06-03 19:48:38

阅读数 1392

评论数 2

原创 算法快学笔记(十二):图的广度优先搜索(BFS-Breadth First Search)

1. 介绍 广度优先搜索(BFS)是一个经典的图算法,该算法能够找出两样东西之间的最短距离!使用广度优先搜索可以: 编写国际跳棋AI,计算最少走多少步就可获胜; 编写拼写检查器,计算最少编辑多少个地方就可将错拼的单词改成正确的单词,如将READED改为READER需要编辑一个地方; 根据你的人际...

2019-03-08 15:08:50

阅读数 299

评论数 0

转载 算法快学笔记(十一):图的深度优先搜索(DFS-Depth-First-Search)

转载自:http://www.cnblogs.com/skywang12345/p/3711483.html 1. 介绍 图的深度优先搜索(Depth First Search),是图的一种搜索方法,和树的先序遍历比较类似。 它的思想:假设初始状态是图中所有顶点均未被访问,则从某个顶点v出发,首...

2019-03-08 15:07:02

阅读数 234

评论数 0

原创 算法快学笔记(十):截图“图”的面纱

1. 介绍 数据结构领域,图(Graph)是一种复杂的非线性结构,在图结构中,每个元素都可以有零个或多个前驱,也可以有零个或多个后继,也就是说,元素之间的关系是任意的。 本文对图的基础支持做一个简单的总结。 2. 定义 2.1 图的定义 图(Graph)是由顶点的有穷非空集合和顶点之间边的集合组成...

2019-02-12 11:00:58

阅读数 282

评论数 0

转载 算法快学笔记(九):红黑二叉树

转载自:http://www.tianxiaobo.com/2018/01/11/红黑树详细分析/  1.红黑树简介 红黑树是一种自平衡的二叉查找树,是一种高效的查找树。它是由 Rudolf Bayer 于1978年发明,在当时被称为对称二叉 B 树(symmetric binary B-t...

2019-01-14 19:06:15

阅读数 532

评论数 0

转载 算法快学笔记(八):一次性学习和B相关的树

本文转自:http://www.cnblogs.com/lj820403/p/7416423.html 1. 说明 常见的B系列树包括,B树、B-树、B+树、B*树,本文对这些树做一个总结 2. B树 即二叉搜索树: 所有非叶子结点至多拥有两个儿子(Left和Right); 所有结点存储一个关...

2019-01-14 18:45:22

阅读数 232

评论数 0

原创 算法快学笔记(七):赫夫曼,赫夫曼树,赫夫曼编码

1. 赫夫曼 鼎鼎大名赫夫曼树以及赫夫曼编码都是出自赫夫曼这位大牛之手,为表致敬先简单的介绍赫夫曼大神。 赫夫曼,全名David Albert Huffman,1925年8月9日-1999年10月7日,生于美国俄亥俄州,计算机科学家,为霍夫曼编码的发明者。 1951年,赫夫曼在麻省理工学院(MIT...

2019-01-11 14:05:06

阅读数 322

评论数 1

原创 算法快学笔记(六):揭开“树”的面纱

算法世界中,树结构是较大的一块知识体系,从二叉树,到B树,到红黑树,赫夫曼树等耳熟能详的算法都可以归纳到“树”这一体系。本文先只对树以及二叉树的基本概念进行阐述,更多算法的讲解请参阅后续博文。 1. 树 树是一种数据结构,它是由n(n>=1)个有限结点组成一个具有层次关系的集...

2019-01-11 11:36:30

阅读数 203

评论数 0

原创 算法快学笔记(五):散列表

1. 介绍 当需要根据给定的值需要快速得到想要值的时候,散列表是一个非常有用的数据结构,假设你在一家杂货店上班。有顾客来买东西时,你得在一个本子中查 找价格,如果本子的内容不是按字母顺序排列的,你可以使用简单查找法,从头到尾以一个一个的找,时间复杂度为O(n),如果本子的内容是按字母顺序排列的,可...

2018-12-30 16:19:17

阅读数 205

评论数 0

原创 算法快学笔记(四):快速排序的原理与实现

1. 原理介绍 快速排序是一种排序算法,速度比选择排序快得多,其主要基于“分而治之”的思想对集合进行排序,本文将对该算法进行分析。 2. 分而治之(D&C)的思想 D&C主要指利用递归的方式来不断的缩小需要处理问题的规模,最终使问题容易解决。使用D&...

2018-12-21 17:32:30

阅读数 315

评论数 0

原创 算法快学笔记(三):选择排序的原理与实现

1. 原理介绍 选择排序是个简单的排序,思路主要通过多次遍历待排序的集合,每次弹出最大/小值并放入新的集合,直到原始集合为空。举个例子: 假设要对A=[1,2,5,9,3]按照升序的方式进行排序,步骤与结果如下 从A中找出最大值,将其pop,并放入B中,执行后的结果如下: A=[2,5,9,3...

2018-12-21 17:29:12

阅读数 253

评论数 0

提示
确定要删除当前文章?
取消 删除
盛天集团投注 盛天集团导航网址 盛天集团怎么样 盛天集团公司在哪里 盛天集团信誉好吗 盛天集团安全吗 盛天集团靠谱吗 恒达集团 恒达集团注册 恒达集团开户