微信扫一扫打赏支持
摘要: 前端工程化的理解 一、总结 一句话总结: 前端工程化是使用软件工程的技术和方法来进行前端的开发流程、技术、工具、经验等规范化、标准化,其主要目的为了提高效率和降低成本,即提高开发过程中的开发效率,减少不必要的重复工作时间。 而前端工程本质上是软件工程的一种,因此我们应该从软件工程的角度来研究前端工程 阅读全文
posted @ 2020-06-04 17:41 范仁义 阅读(1337) 评论(1) 推荐(2)
摘要: 算法注意 3、分治的本质 一、总结 一句话总结: 分治本质上还是枚举,只是和普通枚举的枚举方向不同,仅此而已 1、为什么包含mid的序列,转化成求出区间[i..mid]的最大值与区间[mid+1..j]的最大值也可? 包含mid的子序列分为【包含mid且包含mid+1】和【包含mid且不包含mid+ 阅读全文
posted @ 2020-06-04 17:31 范仁义 阅读(186) 评论(0) 推荐(0)
摘要: 算法与数据结构 4.9、最大子段和-dp空间优化 一、总结 一句话总结: 在最大字段和的动态规划的解法的代码中,我们发现用来做动态规划的数组f在代码中只用到了f[i]和f[i-1],所以我们可以用只有两个元素的滚动数组来优化f数组 /* 我们来看一眼代码: 代码中用到a数组位置除了a[1]这个固定的 阅读全文
posted @ 2020-06-04 17:08 范仁义 阅读(533) 评论(0) 推荐(0)
摘要: 算法与数据结构 4.8、最大子段和-贪心和dp区别 一、总结 一句话总结: A、最大字段和的贪心解法就是只考虑当前对于a[i]最优的情况,是选择s[i-1]还是不选择s[i-1]来得到局部最优解 B、最大字段和的动态规划解法就是在全局统筹的基础上,找到规律,通过规律设置好状态,找到状态转移的方程 二 阅读全文
posted @ 2020-06-04 15:01 范仁义 阅读(325) 评论(0) 推荐(0)
摘要: 算法与数据结构 4.7、最大子段和-动态规划 一、总结 一句话总结: a、最大子段和有对应的动态规划的解法,找到题目的规律, b、根据规律设置状态f[i]表示以第i个元素结尾的子序列的最大值, c、那么状态转移方程为f[i]=max(f[i-1]+a[i],a[i]) (2<=i<=n) #incl 阅读全文
posted @ 2020-06-04 13:11 范仁义 阅读(257) 评论(0) 推荐(0)
摘要: 算法与数据结构 4.6、最大子段和-贪心优化 一、总结 一句话总结: 1、时间方面优化:循环可以合并(循环方向一致,循环最大值也是,并且两个循环之间没有什么逻辑操作代码) 2、空间方面优化:代码中只用到了a[i],所以a[]数组可以用一个变量来代替 #include <iostream> #incl 阅读全文
posted @ 2020-06-04 08:52 范仁义 阅读(282) 评论(0) 推荐(0)
摘要: 算法与数据结构 4.5、最大子段和-贪心解法 一、总结 一句话总结: 贪心求解最大连续子序列的和,其实贪心得到的局部最优解是所有以a[i]结尾的子序列和最大的s[i],在s[i]中找最大的就是全局最优解,时间复杂度为O(n) 算法步骤: 1、找到以a[i-1]结尾的连续非空子序列中和最大s[i-1] 阅读全文
posted @ 2020-06-04 07:42 范仁义 阅读(1199) 评论(0) 推荐(0)