#数据结构与算法

XOR算法的原理和实现

当一个数A和另一个数B进行异或运算会生成另一个数C,如果再将C和B进行异或运算则C又会还原为A。相对于其他的简易加密算法,XOR算法的优点如下。(1)算法简单,对于高级语言很容易能实现。(2)速度快,可以在任何时候、任何地方使用。(3)对任何字符都是有效的,不像有些简易加密算法,只对西文字符有效,对中文加密后再解密无法...
代码星球 代码星球·2020-04-18

当推荐算法开源包多如牛毛,为什么我们还要专门的推荐算法工程师

作为一个推荐系统业余爱好者,在机器学习领域的鄙视链中,我感觉一直地位不高,时常被搞NLPCV语音等高科技技术的朋友鄙视。最近甚至被人问,推荐算法开源包多如牛毛,我们为什么还要专门的推荐算法工程师?(难道想要辞退我!?惊)不得不说,我想吐槽这个观点很久了。事实上搞推荐的工作不等于importIBCF或者importtim...

用C#实现字符串相似度算法(编辑距离算法 Levenshtein Distance)

在搞验证码识别的时候需要比较字符代码的相似度用到“编辑距离算法”,关于原理和C#实现做个记录。据百度百科介绍:编辑距离,又称Levenshtein距离(也叫做EditDistance),是指两个字串之间,由一个转成另一个所需的最少编辑操作次数,如果它们的距离越大,说明它们越是不同。许可的编辑操作...

从入门到精通之Boyer-Moore字符串搜索算法详解

本文讲述的是Boyer-Moore算法,Boyer-Moore算法作为字符串搜索算法,兴趣之下就想了解这个算法,发现这个算法一开始还挺难理解的,也许是我理解能力不是很好吧,花了小半天才看懂,看懂了过后就想分享下,因为觉得这个算法真的挺不错的,以前一直以为字符串搜索算法中KMP算很不错的了,没想到还有更好的,Boyer-...

机器理解大数据秘密:聚类算法深度剖析

在理解大数据方面,聚类是一种很常用的基本方法。近日,数据科学家兼程序员PeterGleeson在freeCodeCamp发布了一篇深度讲解文章,对一些聚类算法进行了基础介绍,并通过简单而详细的例证对其工作过程进行了解释说明。看看下面这张图,有各种各样的虫子和蜗牛,你试试将它们分成不同的组别?不是很难吧,先从找出其中的蜘...

【Java数据结构学习笔记之一】线性表的存储结构及其代码实现

应用程序后在那个的数据大致有四种基本的逻辑结构:集合:数据元素之间只有"同属于一个集合"的关系线性结构:数据元素之间存在一个对一个的关系树形结构:数据元素之间存在一个对多个关系图形结构或网状结构:数据元素之间存在多个对多个的关系对于数据不同的逻辑结构,计算机在物理磁盘上通常有两种屋里存储结构顺序存储结构链式存储结构本篇...

人工鱼群算法总结

(隔了一段时间再来总结,就像重新学习了一次似的,以后一定要及时总结。本编总结系当时研究算法时记录的一些内容,部分原创,部分源自网络)一、 人工鱼的结构模型人工鱼是真实鱼抽象化、虚拟化的一个实体,其中封装了自身数据和一系列行为,可以接受环境的刺激信息,做出相应的活动。其所在的环境由问题的解空间和其他人工鱼的状态...
代码星球 代码星球·2020-04-18

数据结构学习笔记【持续更新】

数据结构概述:  定义:    我们如何把现实中大量而复杂的问题以特定的数据类型和特定的存储结构保存到保存到主存储器(内存)中,    以及在此基础上为实现某个功能(比如查找某个元素,删除某个元素,对所有元素进行排序)而执行相应的操作,    这个相应的操作也叫算法    数据结构=个体+个体的关系    算法=对存储...

机器学习十大常用算法小结

通过本篇文章可以对ML的常用算法有个常识性的认识,没有代码,没有复杂的理论推导,就是图解一下,知道这些算法是什么,它们是怎么应用的,例子主要是分类问题。每个算法都看了好几个视频,挑出讲的最清晰明了有趣的,便于科普。以后有时间再对单个算法做深入地解析。今天的算法如下:决策树随机森林算法逻辑回归SVM朴素贝叶斯K最近邻算法...

【机器学习笔记之四】Adaboost 算法

本文结构:什么是集成学习?为什么集成的效果就会好于单个学习器?如何生成个体学习器?什么是Boosting?Adaboost算法?什么是集成学习集成学习就是将多个弱的学习器结合起来组成一个强的学习器。这就涉及到,先产生一组‘个体学习器’,再用一个策略将它们结合起来。个体学习器可以选择:决策树,神经...

【Java学习笔记之十一】Java中常用的8大排序算法详解总结

分类:1)插入排序(直接插入排序、希尔排序)2)交换排序(冒泡排序、快速排序)3)选择排序(直接选择排序、堆排序)4)归并排序5)分配排序(基数排序)所需辅助空间最多:归并排序所需辅助空间最少:堆排序平均速度最快:快速排序不稳定:快速排序,希尔排序,堆排序。 //排序原始数据privatestaticfina...

【机器学习笔记之一】深入浅出学习K-Means算法

摘要:在数据挖掘中,K-Means算法是一种clusteranalysis的算法,其主要是来计算数据聚集的算法,主要通过不断地取离种子点最近均值的算法。在数据挖掘中,K-Means算法是一种clusteranalysis的算法,其主要是来计算数据聚集的算法,主要通过不断地取离种子点最近均值的算法。问题K-Means算法...

10种AD采样的软件滤波方法及算法

AD采样点的电压多少有点起伏波动,经运放放大后电压的波动如果超过ADC的分辩率,则显示的值会出现波动。波动如果十分大的话,建议在硬件上滤波,相反,如果波动较小,你可以用软件滤波方法解决这个问题。1、限幅滤波法(又称程序判断滤波法)     A、方法: &nbs...

彻底搞懂最短路算法

转载自:戳       只想说:温故而知新,可以为师矣。我大二的《数据结构》是由申老师讲的,那时候不怎么明白,估计太理论化了(ps:或许是因为我睡觉了);今天把老王的2011年课件又看了一遍,给大二的孩子们又讲了一遍,随手谷歌了N多资料,算是彻底搞懂...
代码星球 代码星球·2020-04-18

Java数据结构和算法(十)——二叉树

  接下来我们将会介绍另外一种数据结构——树。二叉树是树这种数据结构的一员,后面我们还会介绍红黑树,2-3-4树等数据结构。那么为什么要使用树?它有什么优点?  前面我们介绍数组的数据结构,我们知道对于有序数组,查找很快,并介绍可以通过二分法查找,但是想要在有序数组中插入一个数据项,就必须先找到...
首页上一页...8990919293...下一页尾页