logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

动态规划------背包问题详解

一、01背包有n件物品,每件物品占用的空间为w[i], 价值为p[i]。有容量为 V 的背包。求在容量允许的范围下,背包装入物品的最大价值。在当前为i,v的情况下,考察第i件物品。有两种情况。1、如果i物品的体积大于v,装不下了。就只能放弃。则最大价值不变。dp[i][v] = dp[i-1][v];2、如果i物品的体积不大于v,可以选择装入i或者放弃i。如果装入i,则剩余的容量变为v-w[i]。

#动态规划#算法
Redis底层数据结构的实现

1、因为现在字符串长度小于等于44字节,所以。

#redis#数据结构#bootstrap
HDU---1232---畅通工程(并查集)

题目描述:某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇。省政府“畅通工程”的目标是使全省任何两个城镇间都可以实现交通(但不一定有直接的道路相连,只要互相间接通过道路可达即可)。问最少还需要建设多少条道路?输入:测试输入包含若干测试用例。每个测试用例的第1行给出两个正整数,分别是城镇数目N ( < 1000 )和道路数目M;随后的M行对应M条道路,每行给出一对

#算法#数据结构
用数组实现邻接表(c++)

图的邻接矩阵存储法,它的空间和时间复杂度都是N^2,而存储图的方法:邻接表,时间空间复杂度优化为O(M)。对于稀疏图来说,M要远远小于N ^ 2。最坏的情况下M就是N ^2,但多数情况下不会有那么多边。先上数据:4 51 4 94 3 81 2 52 4 61 3 7第一行两个整数nm,n代表顶点个数(1-n),m代表边的条数,接下来m行,每行三个数x y z,表示定点x到定点y的距离为z。下面是

#算法#图论
如何将自己的项目上传至github

第一次用往github上传项目,简单记录一下1.新建github仓库先去我的仓库,点击new新建一个仓库①是仓库名②是仓库描述③是仓库是公开还是私有的然后点击④创建仓库创建成功之后这里是你的仓库地址2.安装Git点击Git可以安装安装完git后,找到你的项目,右键Git Bash Here第一步:输入git init 命令,将这个项目变成git可管理的一个仓库,然后可以发现项目下多了一个.git文

#github#git
DES加密算法

文章目录一、加密流程二、密钥扩展方案三、解密流程一、加密流程DES加密流程:输入64位的明文和64位的密钥初始置换IP迭代16轮初始逆变换IP^-1初始置换IP:通过一个初始IP置换表,得到64bit明文分组的置换,作用就是得到一个乱序的64bit明文分组初始逆变换:就是初始变换的逆对于初始变换和初始逆变换对于加密的安全性并无帮助。16轮迭代:经过初始置换后,将64位明文分为左右两组,各32位,然

#算法#密码学
最大子矩阵(动态规划c++)

题目:已知矩阵的大小定义为矩阵中所有元素的和。给定一个矩阵,你的任务是找到最大的非空(大小至少是1 × 1)子矩阵。比如,如下4 × 4的矩阵0-2 -7092 -62-41 -41-180 -2的最大子矩阵是9 2-4 1-1 8这个子矩阵的大小是15。【输入】输入是一个N×N的矩阵。输入的第一行给出N(0<N≤100)。再后面的若干行中,依次(首先从左到右给出第一行的N个整数,再从左到右

#c++#算法#动态规划
机器学习入门-----knn算法简单理解

机器学习首先介绍一下什么是机器学习,机器学习就是⽤⼤量数据进⾏训练,获取到⼀个数据模型,预测就是应⽤训练的模型,来解决⼀个未知的 问题。就像我们人学习一样,⽤⼤量模拟题作为数据进⾏训练,获得的模型就是解题的⽅法。⾼考就是应⽤你训练获取的模 型,检测你的模型是不是可以解决未知的问题机器学习的步骤确定与问题相关的数据(明确输⼊)收集与问题相关的数据 (数据准备,学)分析预测结果的类型 (分类,回归,是

#算法#python#机器学习
到底了