文章 2020-01-07 来自:开发者社区

Python算法题解:动态规划解0-1背包问题

概述 背包问题(Knapsack problem)是一种组合优化的NP完全问题。问题可以描述为:给定一组物品,每种物品都有自己的重量和价格,在限定的总重量内,我们如何选择,才能使得物品的总价格最高。问题的名称来源于如何选择最合适的物品放置于给定背包中。 定义 我们有 n 种物品,物品 j 的重量为wj,价格为pj。我们假定所有物品的重量和价格都是非负的。背包所能承受的最大重量为W。 如果限定每种....

问答 2019-12-25 来自:开发者社区

说明快速排序算法在Python

我正在按照快速排序算法课程的代码行,这些代码行: def quicksort(array): if len(array) pivot] #sub array of all elements > pivot return quicksort(less) + [pivot] + quicksort(greater) print(quicksort([1,15,7,3,9...

问答 2019-11-26 来自:开发者社区

反向传播算法(BP算法)的推导及其Python实现

反向传播算法(BP算法)的推导及其Python实现 如何调整一个神经网络的参数,也就是误差反向传播算法(BP算法)。以得到一个能够根据输入,预测正确输出的模型。

文章 2019-11-16 来自:开发者社区

带你读《Python机器学习》之三:线性回归算法

点击查看第一章点击查看第二章 第3章 线性回归算法 3.1 算法概述 简单来说,回归就是用一条曲线对数据点进行拟合,该曲线称为最佳拟合曲线,这个拟合过程称为回归。回归问题的求解过程就是通过训练分类器采用最优化算法来寻找最佳拟合参数集。当该曲线是一条直线时,就是线性回归。对于一个拥有m个对象、n个属性的样本数据集而言,线性回归的目的就是建立一个线性函数,它能对待测对象x,预测其对应的一个或者多个输....

文章 2019-04-28 来自:开发者社区

Java调用Javascript、Python算法总结

Java调用Javascript、Python算法总结最近项目中经常需要将Javascript或者Python中的算法发布为服务,而发布Tomcat服务则需要在Java中调用这些算法,因此就不免要进行跨语言调用算法。不管是调用Javascript文件还是python脚本,都需要将原来的算法文件进行适当的更改,以便可以在Java中传入参数,并且得到算法运算结果。 一、Java调用Javascrip....

文章 2019-04-21 来自:开发者社区

python实现顺序查找和哈希查找算法

顺序查找 顺序查找是按照序列原有顺序对数组进行遍历比较查询的基本查找算法,顺序查找是最简单的搜索算法,其实现如下: def sequential_search(items, item):     for i in items:        ...

文章 2019-04-19 来自:开发者社区

python实现归并算法

归并排序是采用分治法的一个非常典型的应用,另一个可以采用分治法的是快速排序,归并算法比快速排序速度稍低。归并排序的思想就是先递归分解数组,再合并数组。 将数组分解最小之后,然后合并两个有序数组,基本思路是比较两个数组的最前面的数,谁小就先取谁,取了后相应的指针就往后移一位。然后再比较,直至一个数组为空,最后把另一个数组的剩余部分复制过来即可。 如 设有数列{6,202,100,301,38,8,....

python实现归并算法
文章 2019-04-18 来自:开发者社区

python实现插入排序算法

插入排序,其原理是通过构建一个初始的有序序列,然后从无需序列中抽取元素,插入到有序序列的相对排序位置,就像将一堆编号混乱的书,一本一本的放到书架上,找到上下编号之间的位置插入,最后完成整理。 python实现插入排序并不难,从第二个位置开始遍历,与它前面的元素相比较,如果比前面元素小就交换位置,实现如下: def insert_sort(items):    ...

文章 2019-04-18 来自:开发者社区

python实现希尔排序算法

希尔排序是插入排序的一种又称“缩小增量排序”,是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。 希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。 希尔排序的核心是对步长的理解,步长是进行相对比较的两个元素之间的距离,随着步长的减小,相对元素的大小会逐步区分出来并....

文章 2019-04-14 来自:开发者社区

python实现冒泡排序算法

冒泡排序,一个经典的排序算法,因在算法运行中,极值会像水底的气泡一样逐渐冒出来,因此而得名。 冒泡排序的过程是比较两个相邻元素的大小,然后根据大小交换位置,这样从列表左端开始冒泡,最后最大值会依次从右端冒出。 python实现冒泡排序: def bubble_sort(nums):     for i in range...

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

产品推荐

智能引擎技术

AI Online Serving,阿里巴巴集团搜推广算法与工程技术的大本营,大数据深度学习时代的创新主场。

+关注