E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
《算法系列》
# 数据结构和
算法系列
1 线性表之顺序表
阅读目录什么是线性表线性表的两种存储结构顺序表的存储结构表示顺序表的常见操作和代码实现数据结构与算法这块一直是自己的弱项,为了查漏补缺,我打算把这块写成一个系列,以作总结和学习用1.什么是线性表线性表是零个或多个数据元素的有限序列线性表具有以下四个特征:有且只有一个“首”元素有且只有一个“尾”元素除“首”元素外,其余元素都有唯一的后继元素。除“尾”元素外,其余元素都有唯一的前驱元素。2.线性表的两
jameiShi
·
2019-11-08 21:59
7种常用排序算法的实现示例
这里附上一些我参考过的博客:7种排序算法(系列博客)-静默虚空常用排序算法总结(一)-SteveWang[直观学习排序算法]视觉直观感受若干常用排序算法-todayx白话经典
算法系列
-MoreWindows
quFFFFLLL
·
2019-11-08 06:54
JAVA加解密8-消息摘要算法-MAC
算法系列
一、简述mac(MessageAuthenticationCode,消息认证码算法)是含有密钥散列函数算法,兼容了MD和SHA算法的特性,并在此基础上加上了密钥。因此MAC算法也经常被称作HMAC算法。关于hmac算法的详情可以参看RFC2104(http://www.ietf.org/rfc/rfc2104.txt),这里包含了HmacMD5算法的C语言实现。这里需要说明的是经过mac算法得到的
K1024
·
2019-11-06 18:13
算法系列
之直接插入排序
什么是排序这里是排序算法的第一篇,那么,我们先来回顾一下什么是排序?顾名思义,排序就是把由一系列元素组成的列表按指定的规则排列。什么是插入排序?为什么要使用?简单的说,插入排序就是把无序的元素插入到有序的元素当中。插入排序的过程关于这个,《算法导论》中举了一个特为形象的例子,插入排序就如同你在打扑克时摸牌一样,手里的牌是有序的,而你刚摸得牌是是随机的,需要你插入到已经排好序的扑克牌中,这就是插入排
terwergreen
·
2019-11-06 13:29
iOS
算法系列
(6)
快速排序快速排序的名字起的是简单粗暴,因为一听到这个名字你就知道它存在的意义,就是快,而且效率高!它是处理大数据最快的排序算法之一了。快速排序的基本思想:通过一趟排序将待排记录分隔成独立的两部分,其中一部分记录的关键字均比另一部分的关键字小,则可分别对这两部分记录继续进行排序,以达到整个序列有序。.从数列中挑出一个元素,称为"基准"(pivot);.重新排序数列,所有元素比基准值小的摆放在基准前面
李某lkb
·
2019-11-04 22:17
java 实现排序算法之「选择排序」
java实现排序
算法系列
继冒泡排序算法之后,选择排序终于和大家见面了。为什么冒泡排序之后要说选择排序呢,是因为它俩是最相似的两种排序算法,血缘关系最为接近。
ikook
·
2019-11-04 21:13
图像融合:拉普拉斯金字塔融合算法
Jacob的全景图像融合
算法系列
OpenCV尺度不变特征检测:SIFT、SURF、BRISK、ORBOpenCV匹配兴趣点:SIFT、SURF和二值描述子OpenCV估算图像的投影关系:基础矩阵和RANSACOpenCV
Jacob杨帮帮
·
2019-11-04 19:17
经典排序
算法系列
6----快速排序
快速排序由于排序效率在同为O(NlogN)的几种排序方法中效率较高,因此经常被采用,再加上快速排序思想----分治法也确实实用,因此很多软件公司的笔试面试,包括像腾讯,微软等知名IT公司都喜欢考这个,还有大大小的程序方面的考试如软考,考研中也常常出现快速排序的身影。总的说来,要直接默写出快速排序还是有一定难度的,因为本人就自己的理解对快速排序作了下白话解释,希望对大家理解有帮助,达到快速排序,快速
爱情小傻蛋
·
2019-11-04 05:07
跟我一起学
算法系列
1---Two Sum(java)
Givenanarrayofintegers,returnindicesofthetwonumberssuchthattheyadduptoaspecifictarget.Youmayassumethateachinputwouldhaveexactlyonesolution,andyoumaynotusethesameelementtwice.Example:Givennums=[2,7,11,
充电实践
·
2019-11-04 03:44
算法(5):二叉树
加油加油,怎么也得写个十多篇
算法系列
才行~目录:算法:附录算法(1):递归算法(2):链表算法(3):数组算法(4):字符串算法(5):二叉树算法(6):二叉查找树算法(7):队列和堆栈(附赠BFS和DFS
大王叫我来巡老和山
·
2019-11-03 21:43
经典排序
算法系列
2----插入排序的实现
直接插入排序(InsertionSort)的基本思想是:每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子序列中的适当位置,直到全部记录插入完成为止。设数组为a[0…n-1]。初始时,a[0]自成1个有序区,无序区为a[1..n-1]。令i=1将a[i]并入当前的有序区a[0…i-1]中形成a[0…i]的有序区间。i++并重复第二步直到i==n-1。排序完成。下面给出严格按照定义书写的
爱情小傻蛋
·
2019-11-02 22:29
经典排序
算法系列
1----冒泡排序的实现
冒泡排序是非常容易理解和实现,,以从小到大排序举例:设数组长度为N。1.比较相邻的前后二个数据,如果前面数据大于后面的数据,就将二个数据交换。2.这样对数组的第0个数据到N-1个数据进行一次遍历后,最大的一个数据就“沉”到数组第N-1个位置。3.N=N-1,如果N不为0就重复前面二步,否则排序完成。按照定义很容易写出代码://冒泡排序1voidBubbleSort1(inta[],intn){in
爱情小傻蛋
·
2019-11-02 22:28
EM
算法系列
(三)-最大似然估计
参考原文:http://blog.csdn.net/sallyyoung_sh/article/details/546300441、从故事出发假设我们做这样一个实验:假设我们需要调查我们学校的男生的身高分布。你怎么做啊?你说那么多人不可能一个一个去问吧,肯定是抽样了。假设你在校园里随便地活捉了100个男生。他们共100个人(也就是100个身高的样本数据,为了方便表示,下面,我说“人”的意思就是对应
文哥的学习日记
·
2019-11-02 09:27
经典排序
算法系列
7----堆与堆排序
堆排序与快速排序,归并排序一样都是时间复杂度为O(NlogN)的几种常见排序方法。学习堆排序前,先讲解下什么是数据结构中的二叉堆。二叉堆的定义二叉堆是完全二叉树或者是近似完全二叉树。二叉堆满足二个特性:1.父结点的键值总是大于或等于(小于或等于)任何一个子节点的键值。2.每个结点的左子树和右子树都是一个二叉堆(都是最大堆或最小堆)。当父结点的键值总是大于或等于任何一个子节点的键值时为最大堆。当父结
爱情小傻蛋
·
2019-10-30 22:45
决策树
算法系列
之一 ID3
1什么是决策树通俗来说,决策树分类的思想类似于找对象一个女孩的母亲要给这个女孩介绍男朋友(分类问题、见或不见)女孩有自己的一套标准长相收入职业见面与否丑高某箭队经理不见中等低某大学学生会主席不见中等中等某NN记者不见中等高某上市公司CTO见帅中等公务员见那么有下面的对话女儿:长的帅不帅?母亲:挺帅的。女儿:收入高不?母亲:不算很高,中等情况。女儿:是公务员不?母亲:是,在税务局上班呢。女儿:那好,
Kalafinaian
·
2019-10-19 09:00
Leetcode
算法系列
(链表)之删除链表倒数第N个节点
Leetcode
算法系列
(链表)之删除链表倒数第N个节点难度:中等给定一个链表,删除链表的倒数第n个节点,并且返回链表的头结点。
DreamBoy_张亚飞
·
2019-10-07 14:00
排序
算法系列
1--简单排序(选择,冒泡,直接插入,希尔排序)
排序是数据处理中十分常见的操作,现代高级语言都有现成的n种排序算法。但了解它们的代码,对计算机思维有帮助。简单选择排序每一趟从待排序的数据元素中选择最小(或最大)的一个元素作为首元素,直到所有元素排完为止,简单选择排序是不稳定排序。无论数组原始排列如何,比较次数都不变;变的是交换次数。完全有序的情况下无需交换移动元素,最差情况下(把数组倒序改成正序),交换次数最多:n-1。时间复杂度是n2冒泡排序
Mr-chen
·
2019-10-03 20:00
搜索推荐
算法系列
文章整理
有的还加入了自己的浅显理解,还有一些是自己的经验文章,也都是搜索推荐行业,这个系列算是做完了,特来整理下每篇文章的链接和简要介绍读懂、了解这些文章,基本上搜索推荐行业就可以算入门了,都是一些很经典的技术一、经典模型
算法系列
learner_ctr
·
2019-09-28 00:03
AI爱好者社区
算法一看就懂之「 堆栈 」
好吧,这个
算法系列
的文章我打算每一篇的结尾处都找一道算法题写出代码示例,这总可以了吧。一、「堆栈」是什么?堆栈(stack)是一种先进后出的、操作受限的线性表,也可以直接称为栈。
不止思考
·
2019-09-12 11:14
Web相关技术
数模常用
算法系列
---插值之拉格朗日多项式插值
插值:求过已知有限个数据点的近似函数拉格朗日多项式插值具体原理与推导不多说,感兴趣可以百度,这里直接给出推导公式\(L_n(x)=\sum_{i=0}^ny_il_i(x)=\sum_{i=0}^nyi(\prod_{j=0,j\neqi}^ny_i\frac{x-x_j}{x_i-x_j})\)上式称为n次的Largrange插值多项式子。Matlab实现插值函数:设n个节点数据以数组x0,y0
Aackkom
·
2019-09-10 22:00
算法一看就懂之「 堆栈 」
好吧,这个
算法系列
的文章我打算每一篇的结尾处都找一道算法题写出代码示例,这总可以了吧。一、「堆栈」是什么?堆栈(stack)是一种先进后出的、操作受限的线性表,也可以直接称为栈
CSDN云计算
·
2019-09-10 09:00
数模常用
算法系列
--整数线性规划(分枝定界法)、整数非线性规划(蒙特卡洛法)
整数线性规划求解----分枝定界法什么是整数规划?线性规划中的变量(部分或全部)限制为整数时,称为整数规划。若在线性规划模型中,变量限制为整数,则称为整数线性规划。目前所流行的求解整数规划的方法,往往只适用于整数线性规划。目前还没有一种方法能有效地求解一切整数规划。整数规划的分类-变量全限制为整数时,称(完全)整数规划-变量部分限制为整数时,称混合整数规划什么是分枝定界法原理如下:设有最大化的整数
Aackkom
·
2019-09-09 21:00
python机器学习手写
算法系列
——梯度提升GBDT分类
可以参考一下文章:《python机器学习手写
算法系列
——线性回归》《python机器学习手写
算法系列
——决策树》《python机器学习手写
算法系列
——梯度提升GBDT回归》概述GBDT全称GradentBoostingDecisionTree
有数可据
·
2019-09-09 09:15
手写算法
数模常用
算法系列
Matlab实现-----线性规划
线性规划的Matlab标准形式线性规划的目标函数可以是求最大值,也可以是求最小值,约束条件的不等号可以是小于号也可以是大于号。为了避免这种形式多样性带来的不便,Matlab中规定线性规划的标准形式为\[minC^TX\\x\\Ax=b\\的Matlab标准型为\\min-C^Tx\quads.t.\-Ax=10\\x1+3x_2+x_3=0\]解:c=[2;3;-5];a=[-2,5,-1;1,3
Aackkom
·
2019-09-08 23:00
C语言的10大基础算法
本文是近百个C语言
算法系列
的第二篇,包括了经典的Fibonacci数列、简易计算器、回文检查、质数检查等算法。也许他们能在你的毕业设计或者面试中派上用场。
翻斗街扛把子胡图图
·
2019-09-04 13:16
手写机器学习
算法系列
06——DBSCAN
引言我们在上一节手写机器学习
算法系列
05——k-means介绍了K-means聚类算法和其python实现。
黄嘉成
·
2019-08-23 16:14
机器学习
手写机器学习系列
算法一看就懂之「 堆栈 」
好吧,这个
算法系列
的文章我打算每一篇的结尾处都找一道算法题写出代码示例,这总可以了吧。一、「堆栈」是什么?堆栈(stack)是一种先进后出的、操作受限的线性表,也可以直接称为栈。
不止思考
·
2019-08-23 10:00
手写机器学习
算法系列
05——k-means
引言k-means是一种聚类算法。聚类与之前讲过的分类很相似但实质不一样,分类是已有了明确的类别,然后将样本分到不同类别中去;聚类是事先没有明确的类别,将特征各自相近的样本分别聚在一起。k-means则是原理比较简单的聚类算法。k-means原理k-means的原理可以用一个拟人化的场景来理解:有三个传教士来到了一个小镇,各自选了个地点布道。小镇的居民们都很想听传教士的布道,但三个传教士有的近有的
黄嘉成
·
2019-08-20 11:33
机器学习
手写机器学习系列
100天搞定机器学习|Day23-25 决策树及Python实现
算法部分不再细讲,之前发过很多:【
算法系列
】决策树决策树(DecisionTree)ID3算法决策树(DecisionTree)C4.5算法决策树(DecisionTree)CART算法ID3、C4.5
jpld
·
2019-08-16 10:00
手写机器学习
算法系列
04——决策树
引言决策树(DT,DecisionTree)是一种常用的有监督学习的分类算法,包括ID3、C4.5、C5.0、CART等种类。本文以ID3为例剖析决策树算法的原理和代码实现。决策树进行分类的过程和程序语言中的if-else十分类似,甚至有萌新刚接触决策树的概念时会疑惑为什么不直接使用if-else来进行数据分类。两者区别在于,if-else是已知具体判断流程与条件的情况下采用的分类的方法;而决策树
黄嘉成
·
2019-08-12 13:38
机器学习
手写机器学习系列
手写机器学习
算法系列
02——梯度下降
引言在上一篇手写机器学习
算法系列
01——线性回归中,我们已经成功地通过矩阵求偏导的方法算出目标函数J(Θ)=12m∑i=1m(X(i)Θ−y(i))2J(\Theta)=\frac{1}{2m}\sum
黄嘉成
·
2019-08-03 19:48
机器学习
手写机器学习系列
算法初级-06-贪心
算法系列
年轻即出发...:https://www.jianshu.com/u/7110a2ba6f9e知乎:https://www.zhihu.com/people/zqtao23/postsGitHub源码:https://github.com/zqtao2332个人网站:http://www.zqtaotao.cn/(停止维护更新内容,转移)QQ交流群:606939954咆哮怪兽一枚...嗷嗷嗷...
囧么肥事
·
2019-07-21 16:12
【CV系列】图像去噪算法研究(去噪+锐化)
DATE:2019-5-29Tags:图像处理----图像去噪和图像锐化
算法系列
前言 图像增强是图像处理和计算机视觉中的一个重要的研究课题,主要作为图像预处理或者后处理,使处理后的图像更加清晰,以便于后面的图像分析和理解
飞翔的鲲
·
2019-07-03 22:13
【图像处理入门和进阶教程】
【机器视觉入门和进阶教程】
CV
图像增强
图像处理算法
调研
总结
数据结构与
算法系列
目录
数据结构与
算法系列
目录最近抽空整理了"数据结构和算法"的相关文章。在整理过程中,对于每种数据结构和算法分别给出"C"、"C++"和"Java"这三种语言的实现;实现语言虽不同,但原理如出一辙。
yjwpop
·
2019-06-21 17:00
iOS
算法系列
(一)- 约瑟夫环
前言在开始正题之前要感叹一句:一定要好好学算法,虽然就封装的角度来说,完全可以把前人的算法封装成工具类或分类直接拿来用,但是我们还是很有必要明白其中的原委。不做敲代码的程序猿,只做有灵魂的攻城狮!废话不多说,开始正题!约瑟夫环问题描述:有m个人,围成一个环,编号为0、1、2、3、、、m-1,从第k个人开始循环报数,假设数到n的那个人出列,然后从下一个人继续数数,数到n出列,以此循环,按顺序输出所有
DockeriOS
·
2019-06-14 16:57
数据结构
算法系列
3-排序算法
1.冒泡排序从数组头开始,比较相邻的元素。如果第一个比第二个大(小),就交换它们两个;对每一对相邻元素作同样的工作,从开始第一对到尾部的最后一对,这样在最后的元素应该会是最大(小)的数;重复步骤1~2,重复次数等于数组的长度,直到排序完成。publicstaticvoidsort(int[]array){if(array.length==0)return;for(inti=0;iarray[j+1
huanshirenjian
·
2019-06-11 00:18
数据结构和算法
数据结构
算法系列
2-图
图是由顶点(vertex)和边(edge)组成的一种结构。顶点的集合V,边的集合是E,所以图记为G=(V,E)。有向图是边有方向,无向图是边之间没有方向。无向图顶点的边数叫度,有向图顶点的边数叫出度和入度。连通图是图的任意两个顶点都有路径可达。如果图的边有值,成为权值。图一般在程序中用矩阵,也就是数组表示。1.图的深度优先遍历访问顺序是:A->C->B->D->F->G->Epublicclass
huanshirenjian
·
2019-06-10 21:20
数据结构和算法
数据结构
算法系列
1-哈夫曼树、AVL树、红黑树
1.树的定义树是由N个结点构成的有限集合,每个节点都有0个或者多个互不相交的树,称为结点的子树。结点的度:结点的子树个数树的度:树中所有结点中最大的度叶结点:度为0的结点父结点:有子树的结点是其子树的根结点的父结点子树是不相交的2.二叉树度为2的树,子树有左右顺序之分。3.哈夫曼树一棵二叉树,该树的带权路径长度达到最小,称为最优二叉树,也称为哈夫曼树(HuffmanTree)。3.1构造方式每次把
huanshirenjian
·
2019-06-10 16:50
数据结构
数据结构和算法
Louvain 算法原理及设计实现
本篇为
算法系列
文章,将为大家分享360的算法团队在实践中积累的算法知识及经验,欢迎大家交流分享~Louvain算法是一种基于多层次优化Modularity的算法,具有快速、准确的优点,在效率和效果上都表现比较好
360技术
·
2019-05-31 00:00
机器学习
算法
算法系列
:5分钟了解哈希算法
原文链接:https://juejin.im/post/5cef99fd6fb9a07ee742c3e3前言哈希算法是现代密码体系中的一个重要组成部分。大家比较感兴趣的数字货币,就使用了哈希算法。哈希算法简介哈希(hash)算法又称为散列算法,通过hash算法,可以将任意长度的信息转换成一个固定长度的二进制数据,我们经常会使用十六进制值来表示转换后的信息。比如,数字123,使用md5的hash算法
weixin_34245169
·
2019-05-30 09:51
聚类
算法系列
之密度聚类DBSCAN
DBSCAN算法简述:为什么出现DBSCAN算法?当大家一说起聚类算法时候,最先想到的估计就是K-Means或Mean-Shift算法了。但是,K-Means和Mean-Shift算法是通过距离聚类的方式来进行判别,需要设定类别参数,同时聚类的结果都是球状的簇。如果是非球状的分布结构,那么K-Means算法效果并不好。非球状结构的分布如下:像上述这样的分布结构,如果使用K-Means算法的话,聚类
small_munich
·
2019-05-26 15:35
机器学习
python机器学习手写
算法系列
——kmeans聚类
从机器学习到kmeans聚类是一种非监督学习,他和监督学习里的分类有相似之处,两者都是把样本分布到不同的组里去。区别在于,分类分析是有标签的,聚类是没有标签的。或者说,分类是有y的,聚类是没有y的,只有X。所以,聚类只能根据X的特征本身,把样本分布到不同的组。比如,我们有个成语,叫物以类聚,人以群分。我们可以把人分成男人和女人,这里分组的根据是人本身的属性-性别。而性别是知道的,而不需要用一个公式
有数可据
·
2019-05-24 14:22
机器学习
手写算法
大白话5分钟带你走进人工智能-第二十八节集成学习之随机森林概念介绍(1)
第二十八节集成学习之随机森林概念介绍(1)从本系列开始,我们讲解一个新的
算法系列
集成学习。集成学习其实是怎么样去应用决策树解决一些问题。
L先生AI课堂
·
2019-05-20 10:00
数据结构与
算法系列
——二分查找
二分查找算法的简单介绍今天我们来学习一下二分查找算法,也叫做折半查找算法。使用二分查找算法的前提是数据需要是有序的。二分查找的思想非常简单,很容易理解,就是每次取中间位置的数和要找的数作比较,通过判断是大还是小来重新选择中间位置,直到找到。但是在实际的应用中却并不简单,因为我们实际碰到的问题不会像一个排好序的数组,然后让我们找出其中是不是包含某一个数这么简单。简单的例子我们在生活中也会经常遇到二分
Keep-Up
·
2019-05-19 13:08
数据结构和算法
数据结构和算法
Spark排序
算法系列
之(MLLib、ML)GBDT+LR使用方式介绍(模型训练、保存、加载、预测)
weibo.com/234654758Github:https://github.com/thinkgamer公众号:搜索与推荐Wiki个人网站:http://thinkgamer.github.io【Spark排序
算法系列
Thinkgamer_
·
2019-05-13 22:38
搜索与排序
Spark排序
算法系列
之(MLLib、ML)LR使用方式介绍(模型训练、保存、加载、预测)
weibo.com/234654758Github:https://github.com/thinkgamer公众号:搜索与推荐Wiki个人网站:http://thinkgamer.github.io【Spark排序
算法系列
Thinkgamer_
·
2019-05-07 10:27
搜索与排序
python机器学习手写
算法系列
——线性回归
本系列另一篇文章《决策树》https://blog.csdn.net/juwikuang/article/details/89333344本文源代码:https://github.com/juwikuang/machine_learning_step_by_step最近我发现我之前写的一篇文章《一个公式告诉你为什么程序员要转算法工程师》http://blog.csdn.net/juwikuang/
有数可据
·
2019-05-06 00:00
机器学习
现代优化算法(五): 蚁群算法
组合优化
算法系列
:现代优化算法(一):模拟退火算法及应用举例现代优化算法(二):遗传算法及应用举例现代优化算法(三):禁忌搜索算法现代优化算法(四):改进的遗传算法现代优化算法(五):蚁群算法目录1蚁群算法简介
wamg潇潇
·
2019-04-29 15:46
matlab数学建模
改进的遗传算法
组合优化
算法系列
:现代优化算法(一):模拟退火算法及应用举例现代优化算法(二):遗传算法及应用举例现代优化算法(三):禁忌搜索算法现代优化算法(四):改进的遗传算法现代优化算法(五):蚁群算法1引言2模型及算法
wamg潇潇
·
2019-04-29 15:03
matlab数学建模
图解
算法系列
(十五):希尔排序法
我们知道当原始记录的键值大部分已经排好顺序的情况下,插入排序法会非常有效率,因为它不需要执行太多的数据搬移操作。“希尔排序法”是D.L.Shell在1959年7月所发明的一种排序法,可以减少插入排序法中数据搬移的次数,以加速排序的进行。排序的原则是将数据区块分成特定间隔的几个小区块,以插入排序法排完区块内的数据后再渐渐减少间隔的距离。下面我们用63,92,27,36,45,71,58,7数列从大到
Ken Coding
·
2019-04-29 11:57
数据结构与算法
数据结构与算法
上一页
26
27
28
29
30
31
32
33
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他