- 博客(28)
- 收藏
- 关注
原创 贪心:621. 任务调度器(未解决)
问题:来源:leetcode分析:总时间肯定取决于个数最多的,先排好个数最多的,因为它是确定的:剩下的按照最多数位置+I的方法,我怎么排也是满足条件的。然后统计最多个数的任务有多少种,决定最后需要加多少个位置。然而这样是很不全面的,仍需要考虑按照最大个数给的,其他的能否放下。自己这一点没想通,想想,为什么要留这么大,因为最小要留着么大,不够我再加呗!!!代码:总结:基础qs...
2019-11-29 00:40:02 121
原创 贪心:502. IPO
题目:来源:。。分析:很容易想,考虑用结构体优先队列。代码:struct node1{//按照本金大小 从小到大排列的 暂时还不能进行的项目。 int x,y;//x是本金 y是净赚 bool operator < (const node1&a) const { return x>a.x;//x小的在队列首部 }}; struct...
2019-11-28 20:06:51 93
原创 机器学习,人工智能,深度学习及tensorflow的安装
机器学习作用:对连续型数据进行预测对离散型数据进行分类关系学习推荐版本Linux下安装python 2.7 tensorflow1.3.0安装tensorflow
2019-11-28 12:19:19 145
原创 贪心:435. 无重叠区间
题目:给定一个区间的集合,找到需要移除区间的最小数量,使剩余区间互不重叠。来源:leetcode分析:题目换一种说法,找最多的不重叠区间,即最经典的贪心问题。贪心策略:最早结束,给剩余的留尽可能多的空间。–>受戳爆气球问题的启发:相同终点的选哪个有影响吗?答:显然没有,因为考虑下一个的时候和考虑第一个时一样,只是为了给后面的留更多的空间。代码:class Solution ...
2019-11-26 21:55:56 134
原创 简单贪心:452. 用最少数量的箭引爆气球(好)
题目:来源:leetcode分析:简单贪心,每个气球都要被射爆,每次取第一个结束的即可。而且可以有以下的简化思路:以end记录,而且每次起点大于end之后,箭数+1,就是每次不用确保该箭射爆所有可以射爆的全部气球。即以下问题。排序之后,当前的箭无法射爆下一个气球,但可以射爆下一个的下一个气球,怎么办?很容易分析到,下一个箭能射爆下一个的下一个气球,即上面说的每次起点大于end之后,...
2019-11-25 20:36:55 125
原创 修改快排算法,让其按照二维数组的第二个值的大小排序
用途:贪心算法的按结束事件早的排序。代码:int a[5][2];void sort(int left, int right){//a[i][j] 对i个进行排序,按照a【x】的第一个 (最早结束) if(left >= right) return; int i = left; int j = right; int key = a[lef...
2019-11-25 20:35:18 198
原创 贪心:330. 按要求补齐数组(好)
题目:来源:leetcode思路:看题解和讨论太少了,就没去做,感觉挺好想的。->我该如何添加数字?用题解的例子,你给别人x元,你怎么给,肯定是给小于等于x元的。->添加哪个?(1,2,3,8) n=16【1,6】有了,没有7,那我想要7的话添加【1,7】之间任意一个数字都是可以的,如何选择?添加后,应该能扩展越多的数字更好。添加x,原来的范围就变成了【1,6+x】,...
2019-11-24 22:07:12 178
原创 贪心:135. 分发糖果(好)
题目:来源:leetcode思路:第一轮处理:第一个人给1块,不论正负先给,第二轮处理:负数变正,其左边的连续下降和右边的连续上升都加相应的值。第三轮处理:求和。自己想的。盗取优秀思路:自己的方法也行吧,但是被推荐题解虐哭了额。人家的思路:右规则相当于正着来一遍,左规则相当于逆着来一遍。是真的厉害啊。猛然意识到,这其实是对我的方法的改进!!!,实现过程都是一样的,...
2019-11-24 17:07:06 133
原创 贪心:134. 加油站
问题:来源:leetcode思路:紫书上遇到过这个题,计算每一处的净剩余值,问题转化为走一圈不遇到负数值即可,那么从一个上一个数是负数的位置走,能否直接判断这一种结果?不能。当然有1次遍历的方法,不够了,往前找嘛!(就提示到这里)代码: vector<int> gas; vector<int> cost; int A[gas.size()]; for...
2019-11-24 15:55:49 166
原创 贪心:55. 跳跃游戏
题目:来源:leetcode题解:从头到尾遍历,走一步,其后可以走的全置1。并且可以设立一个值,代表之后的几个已经置1了,那么就不用真的去置1,只是说可以往后走几步,每走一步-1,到i,i走的更多,则取i处的值。体现了贪心。终止看max值是否为0.代码:vector<int> nums; if(nums.size()<=1) return true; int...
2019-11-24 15:31:09 249 1
原创 贪心:455. 分发饼干
问题:来源:leetcode分析:要先排序。我的贪心策略:都从小到大排序之后,看最小的饼干是否满足最小胃口的孩子,不满足,尝试下一块饼干。代码: vector<int> g;//胃 vector<int> s;//饼大小 sort(g.begin(),g.end()); sort(s.begin(),s.end()); int n=0; i...
2019-11-24 15:07:37 168
原创 动态规划:晴天小猪历险记之Hill
题目:算法:动态规划来源:vijos题解1:乍一看是一道数字金字塔。再一看居然还能左右走!再一看山居然是环形!提示:先将前一层的状态转移上来再在同一层内左右移动同一层内左右走如何处理:由于当前行的最小值不会改变, 环可以变成行。第一次忘记给出从做指定位置出发:当然很好处理,从第一个位置左右来回处理找最小的即可。代码1:从山底任一点开始:int f_add(int i,...
2019-11-21 22:16:01 431
原创 矩阵加速:Warcraft III 守望者的烦恼(快速幂算法)
问题:算法:矩阵加速参考:https://blog.csdn.net/weixin_43501684/article/details/99739824斐波那契数列矩阵加速分析:另一个问题:加速:总结:当写出相关项的递推公式,便可以很容易写出加速矩阵。矩阵快速幂...
2019-11-21 13:34:52 254
原创 linux下pip安装问题及版本查看
安装问题:根据提示安装版本依然出错:使用一下命令python -m pip install -U pip版本查看:pip2 list或pip3 list
2019-11-18 10:51:56 2167
原创 测试tensorflow是否成功安装的方法
第一步:进入python环境第二步:执行如下代码import tensorflow as tfprint("haha")当然可以命令行一句一句来,成功输出安装成功关键就是第一句那个引入的包...
2019-11-17 21:36:00 5349 3
原创 动态规划:清帝之惑之顺治
问题:算法:动态规划来源:算法课程盗取的vijos题思路:不会,参考大佬:阶段:地图上的任意一个位置状态:设f(i,j)表示(i,j)这个位置的最长路径决策:f(i,j)=max{f(i-1,j),f(i,j-1),f(i+1,j),f(i,j+1)}+1很明显有后效性,所以采用递归进行消除代码:...
2019-11-17 14:41:56 280
原创 动态规划:买卖股票的最佳时机
题目:算法:dp题解:妈耶,简单题都凉凉。A【i】为到i为止的最大收益。B记录当前的最小值。A【i】=max(A【i-1】,v【i】-B);代码:class Solution {public: int maxProfit(vector<int>& v) { &n...
2019-11-09 10:50:03 154
原创 一个电脑上多个版本的Python的使用与设置
参考:小甲鱼的文章。https://fishc.com.cn/thread-58701-1-1.html
2019-11-08 20:50:24 281
原创 动态规划:最大子序和
问题:给定一个整数数组 ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。算法:动态规划思路:转移方程:用A【i】表示包含字符i的最大连续子序列的和。当A【i-1】>0时,A【i】=A【i-1】+v【i】。<0 ,A【i】=v【i】。虽然是简单题,但还是感觉不好想。代码:class Solution {public: &nbs...
2019-11-08 15:02:01 104
原创 动态规划:打家劫舍II
题目:你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报装置的情况下,能够偷窃到的最高金额。 改为环形。思路:去掉前后,然后前后两次dp。哈哈哈,自己想出来了,后期处理复杂。nb思路...
2019-11-06 14:38:10 162
原创 动态规划:打家劫舍
题目:你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报装置的情况下,能够偷窃到的最高金额。。算法:动态规划思路:简单题,A【i】表示偷该房间时,偷盗的最大值。A【i】=max(A【i-2】...
2019-11-06 11:20:01 128
原创 动态规划:不同路径 II
题目:现在考虑网格中有障碍物。那么从左上角到右下角将会有多少条不同的路径?算法:贪心该问题遇上一个问题相似,只要把有障碍的位置设置为0就可以了。收获:1.vector的“=”是深拷贝。2.二维vector的初始化方式:vector<vector >vec(列,vector(行,’#’));3.该题失败是因为超过int的范围,long long的二维vector不能直接 =...
2019-11-05 20:35:42 122
原创 动态规划:不同路径
题目:一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。问总共有多少条不同的路径?思路:很简单,先对第一行和第一列赋值为1。然后一行一行的求到该位置的路径数=其上+其左。代码:int main(){ int m; int n; cin>&...
2019-11-05 13:16:32 154
原创 动态规划:最长有效括号
问题:最长有效括号给定一个只包含 ‘(’ 和 ‘)’ 的字符串,找出最长的包含有效括号的子串的长度。算法:DP思路:看了题解:定义A[i]:其中第i个元素表示以下标为i的字符结尾的最长有效子字符串的长度。那么最后遍历查找最大值即可。A[i]为(:值为0、A[i]为):分两种情况:(1)I-1为(:则A【i】=A【i-2】+2;(2)i-1为):[i]=A[i-1]+A[i-A[...
2019-11-05 12:53:43 243
原创 中心扩展算法,dp:最长回文子串
已放弃再看算法竞赛的书,直接刷题。仅以记录自己的思路和总结。问题:最长回文子串给定一个字符串 s,找到 s 中最长的回文子串。来源:力扣算法:DP思路1:输出最长的回文子串的长度,从头开始,对字符串长度为0-0,0-1,0-2直到结束的问题求解。0-n内的最长回文子串长度=max( 0-(n-1)内的最长回文子串长度,0-n内的含有字符串第n个字符的最长回文串的长度)。0-n内的含...
2019-11-04 16:15:05 297
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人