算法
樱桃木
曾梦想仗剑走天涯
看一看世界的繁华
代码淘宝店:速码科技工作室
字节跳动内推码HUMNANY
展开
-
非码农也能看懂的“机器学习”原理
我们先来说个老生常谈的情景:某天你去买芒果,小贩摊了满满一车芒果,你一个个选好,拿给小贩称重,然后论斤付钱。 自然,你的目标是那些最甜最成熟的芒果,那怎么选呢?你想起来,啊外婆说过,明黄色的比淡黄色的甜。你就设了条标准:只选明黄色的芒果。于是按颜色挑好、付钱、回家。啊哈,人生完整了? 呵呵呵。 告诉你吧人生就是各种麻烦 等你回到家,尝了下芒果。有些确实挺甜...原创 2020-03-05 19:17:32 · 375 阅读 · 0 评论 -
十大经典排序算法(动图演示)
0、算法概述 0.1 算法分类 十种常见排序算法可以分为两大类: 非线性时间比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此称为非线性时间比较类排序。 线性时间非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此称为线性时间非比较类排序。 0.2 算法复杂度 0.3 相关概念 ...原创 2020-03-05 19:31:55 · 123 阅读 · 0 评论 -
动态规划解决01背包问题
一、问题描述:有n 个物品,它们有各自的重量和价值,现有给定容量的背包,如何让背包里装入的物品具有最大的价值总和? 二、总体思路:根据动态规划解题步骤(问题抽象化、建立模型、寻找约束条件、判断是否满足最优性原理、找大问题与小问题的递推关系式、填表、寻找解组成)找出01背包问题的最优解以及解组成,然后编写代码实现; 三、动态规划的原理及过程: eg:number=4,capacity=8 ...原创 2020-03-05 19:35:41 · 404 阅读 · 0 评论 -
动态规划之背包问题
动态规划中有一个经典的问题,背包问题,一个背包体积为V,现有n件物品,每件物品都有其价值w和体积v,现在要求将物品装入背包,要求使其获得的价值最大,对这个问题,我们引入一个概念“性价比”,即价值和体积的比值w/v,表明单位体积的价值量,那么自然而然我们在选择物品时,一定是以此选择”性价比“大的物品,所以在数据处理时必须将物品按照“性价比”按照递减排序;下面来看一个题目描述 题目描述: 辰辰...原创 2020-03-05 19:31:40 · 175 阅读 · 0 评论 -
背包问题(贪心算法)
注意:这是背包问题,而不是0-1背包问题,背包问题可以用贪心算法进行求解,但0-1无法用贪心算法求解,需要用动态规划算法求解; 首先对贪心算法做一下总结,以及它与动态规划算法的区别: 贪心算法两个最重要的性质: (1)贪心选择性质; (2)最优子结构性质; 其中,贪心选择性质:自顶向下进行决策,每次做出的决策都是局部最优解,且每次做出决策后问题规模都变小了;最优子结构性质:即问题的最优解...原创 2020-03-05 19:28:31 · 1368 阅读 · 0 评论 -
背包问题贪心算法
时间限制:3000ms | 内存限制:65535KB 难度:3 描述 现在有很多物品(它们是可以分割的),我们知道它们每个物品的单位重量的价值v和重量w(1<=v,w<=10);如果给你一个背包它能容纳的重量为m(10<=m<=20),你所要做的就是把物品装到背包里,使背包里的物品的价值总和最大。 输入 第一行输入一个正整数n(1<=n&...原创 2020-03-05 19:31:27 · 366 阅读 · 0 评论