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
《算法系列》
Java数据结构和
算法系列
———栈
目录1、栈的基本概念2、Java模拟简单的顺序栈实现3、增强功能版栈4、利用栈实现字符串逆序5、利用栈判断分隔符是否匹配6、总结1、栈的基本概念栈(英语:stack)又称为堆栈或堆叠,栈作为一种数据结构,是一种只能在一端进行插入和删除操作的特殊线性表。它按照先进后出的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶,需要读数据的时候从栈顶开始弹出数据(最后一个数据被第一个读出来)。栈具有记忆
wx5d9ed7c8443c3
·
2019-12-10 21:11
数据结构
Java
后端
Java数据结构和
算法系列
———队列
目录1、队列的基本概念2、Java模拟单向队列实现3、双端队列4、优先级队列5、总结1、队列的基本概念队列(queue)是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列中没有元素时,称为空队列。队列的数据元素又称为队列元素。在队列中插入
wx5d9ed7c8443c3
·
2019-12-10 20:51
队列
Java
后端
0-数据结构基本概念
参考链接数据结构基本概念数据结构与
算法系列
之绪论数据描述客观事物的符号可以输入到计算机能够被计算机程序处理数据元素组成数据、有一定意义、也被称为记录比如:人类中人就是数据元素数据项一个数据元素可以由很多数据项组成是不分割的最小单元比如
梦即是幻
·
2019-12-02 11:11
3.2-选择排序-堆排序
参考链接选择排序:堆排序(HeapSort)白话经典
算法系列
之七堆与堆排序堆排序与快速排序,归并排序一样都是时间复杂度为O(N*logN)的几种常见排序方法。
梦即是幻
·
2019-11-30 09:52
〔两行哥〕OpenCV4Android入门教程之
算法系列
(一):直线绘制算法
你知道一条简单的直线是怎么显示在计算机屏幕上吗?有人说,就是一个个像素点啊,将一个个像素点连起来就显示为一条直线了。但是这些点是如何排布的呢?通过什么样的算法展示给坐在电脑前面的你呢?让我们一起来研究一下。有能力的同志可以先参考:维基百科-Bresenham'slinealgorithm,看不懂没关系,两行哥带你一步一步分析。一、计算机是如何显示直线的在屏幕上我们看到了一条直线,但是它真的是一条直
两行哥
·
2019-11-30 04:55
3.1-选择排序-简单选择排序
参考链接选择排序:简单选择排序(SimpleSelectionSort)白话经典
算法系列
之四直接选择排序及交换二个数据的正确实现基本思想:直接选择排序和直接插入排序类似,都将数据分为有序区和无序区,所不同的是直接插入排序是将无序区的第一个元素直接插入到有序区以形成一个更大的有序区
梦即是幻
·
2019-11-29 06:09
经典排序
算法系列
0-提纲
Sort经典排序算法,各自的时间复杂度,空间复杂度https://itimetraveler.github.io/2017/07/18/%E5%85%AB%E5%A4%A7%E6%8E%92%E5%BA%8F%E7%AE%97%E6%B3%95%E6%80%BB%E7%BB%93%E4%B8%8Ejava%E5%AE%9E%E7%8E%B0/https://mp.weixin.qq.com/s/H
xgangzai
·
2019-11-22 16:54
前端数据结构与算法细致分析—上(复杂度分析)
时间挤不出来了,只能每天写一点,接下来是一套
算法系列
。当然只是针对前端同学,后端的可以按后退键了,因为这些对于后台来说肯定是小case.首先,写这篇文章之前,先说一下前端要不要学习算法。
Yxaw
·
2019-11-16 01:27
javascript
vue.js
react.js
html
XGBoost: A Scalable Tree Boosting System
XGBOOST是ensembledecisiontree
算法系列
中的一个改进算法,与常规决策树(复习一下:最大化信息增益(ID3),信息增益率(C4.5)或GINI值(CART))中损失函数为不同,XGBOOST
yue_dbe5
·
2019-11-08 23:57
# 数据结构和
算法系列
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
机器学习
上一页
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
其他