#数据结构与算法

交换排序---快速排序算法(Javascript版)

快速排序是对冒泡排序的一种改进。通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,最终达到整个数据变成有序序列。假设要排序的数组是A[0]……A[N-1],首先任意选取一个数据(通常选用数组的第一个数...

交换排序---冒泡排序算法(Javascript版)

比较相邻的元素。如果第一个比第二个大,就交换他们两个。对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。针对所有的元素重复以上的步骤,除了最后一个。持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。 functionsort(elements...

选择排序---堆排序算法(Javascript版)

堆排序分为两个过程:1.建堆。堆实质上是完全二叉树,必须满足:树中任一非叶子结点的关键字均不大于(或不小于)其左右孩子(若存在)结点的关键字。堆分为:大根堆和小根堆,升序排序采用大根堆,降序排序采用小根堆。如果是大根堆,则通过调整函数将值最大的节点调整至堆根。2.将堆根保存于尾部,并对剩余序列调用调整函数,调整完成后,...

选择排序---直接选择排序算法(Javascript版)

在要排序的一组数列中,选出最小(或者最大)的一个数与第1个位置的数交换;然后在剩下的数当中再找最小(或者最大)的与第2个位置的数交换,依次类推,直到第n-1个元素(倒数第二个数)和第n个元素(最后一个数)比较为止。functionsort(elements){for(i=0;i<elements.length;i...

插入排序---希尔插入排序算法(Javascript版)

取一个小于n的整数作为第一个增量,把序列分组。所有距离为增量的倍数的元素放在同一个组中。先在各组内进行直接插入排序;然后,取第二个增量(第二个<第一个)重复上述的分组和排序,直至所取的增量=1,即所有元素放在同一组中进行直接插入排序为止。 一般的初次取序列的一半为增量,以后每次减半,直到增量为1。&nb...

插入排序---直接插入排序算法(Javascript版)

将n个元素的数列分为已有序和无序两个部分。数列:{a1,a2,a3,a4,…,an}将该数列的第一元素视为有序数列,后面都视为无序数列:{{a1},{a2,a3,a4,…,an}}将无序数列中的元素插入到有序数列的对应位置,插入前通过比大小的方式找到其在有序数列中的对应位置。 代码:以下代码在nodejs环境...

Merkle Tree算法详解

转载自:http://blog.csdn.net/yuanrxdu/article/details/22474697MerkleTree是Dynamo中用来同步数据一致性的算法,MerkleTree是基于数据HASH构建的一个树。它具有以下几个特点:1、数据结构是一个树,可以是二叉树,也可以是多叉树(本BLOG以二叉树...
代码星球 代码星球·2021-02-25

用到的一些算法收集

卷积:staticintfilter0(uint8_t*src,uint8_t*dst,intw,inth){doublestart,end;inti=1;intj=1;if(w>WIDTH||h>HEIGHT)return1;start=now_ms();for(i=1;i<h-1;++i){for...
代码星球 代码星球·2021-02-24

从零开始入门 K8s | 调度器的调度流程和算法介绍

/导读:Kubernetes作为当下最流行的容器自动化运维平台,以声明式实现了灵活的容器编排,本文以v1.16版本为基础详细介绍了K8s的基本调度框架、流程,以及主要的过滤器、Score算法实现等,并介绍了两种方式用于实现自定义调度能力。Kubernetes作为当下最主流的容器自动化运维平台,作为K8s的容器编排的核心...

【教程】5分钟在PAI算法市场发布自定义算法

在人工智能领域存在这样的现象,很多用户有人工智能的需求,但是没有相关的技术能力。另外有一些人工智能专家空有一身武艺,但是找不到需求方。这意味着在需求和技术之间需要一种连接作为纽带。今天PAI正式对外发布了“AI市场”以及“PAI自定义算法”两大功能,可以帮助用户5分钟将线下的spark算法或是pyspark算法发布成算...

Oracle导出数据结构和数据表的方法

1、PLSQL导出数据结构(数据表、序列、触发器、函数、视图)1)在左侧点击tables2)Tools--》ExportUserObjects3)红色1是你要选择导出的表,红色2是你要导出到.sql文件存放到自己电脑位置,红色三就是导出的意思,做完这一步就已经把数据表的结构导出来了2、PLSQL导出表数据1)在左侧点击...

ALS算法实现用户音乐打分预测

很多人在决定是否看一部电影之前都会去豆瓣看下评分作为参考,看完电影也会给一个自己的分数。每个人对每个商品或者电影或是音乐都有一个心理的分数,这个分数标明用户是否对这个内容满意。作为内容的提供方,如果可以预测出每个用户对于内容的心理分数,就能更好的理解用户,并给用户提供好的内容推荐。今天就介绍下如何通过ALS矩阵分解算法...

从分布式一致性算法到区块链共识机制

/摘要: 本文将从传统的分布式一致性问题说起,再次重温我们需要面对的问题挑战、已有的理论研究、以及相应的一致性算法,并简要分析这些一致性算法的适用性与局限性,以及这些传统一致性算法与崭新的区块链技术的结合。另外,将从区块链中一致性问题的全新视角“人的可信”出发,重点阐述公有链领域中的共识算法与机制。分布式一致...

机器学习算法中GBDT和XGBOOST的区别有哪些?

转自:https://www.zhihu.com/question/41354392作者:wepon链接:https://www.zhihu.com/question/41354392/answer/98658997来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。最近赞忽然多了起来,我猜是...

Boost算法(GDBT,AdaBoost,XGBoost)原理及实践

在上一篇博客里,我们讨论了关于Bagging的内容,其原理是从现有数据中有放回抽取若干个样本构建分类器,重复若干次建立若干个分类器进行投票,今天我们来讨论另一种算法:提升(Boost)。简单地来说,提升就是指每一步我都产生一个弱预测模型,然后加权累加到总模型中,然后每一步弱预测模型生成的的依据都是损失函数的负梯度方向,...
首页上一页...56789...下一页尾页