当前位置: 首页 > news >正文

主流做网站程序代码电商网站如何避免客户信息泄露

主流做网站程序代码,电商网站如何避免客户信息泄露,烟台网站建设的公司,网站设计公司网页设计代码随想录第四十八天 Leetcode 198. 打家劫舍ILeetcode 213. 打家劫舍 IILeetcode 337. 打家劫舍 III Leetcode 198. 打家劫舍I 题目链接: 打家劫舍I 自己的思路:想不太出来递推公式#xff01;#xff01;#xff01;#xff01; 正确思路:这个题主要是看是否偷第下标为… 代码随想录第四十八天 Leetcode 198. 打家劫舍ILeetcode 213. 打家劫舍 IILeetcode 337. 打家劫舍 III Leetcode 198. 打家劫舍I 题目链接: 打家劫舍I 自己的思路:想不太出来递推公式 正确思路:这个题主要是看是否偷第下标为i的房间直接动规五部曲1、dp数组的含义dp[i]表示从下标0到下标i包括下标i但不一定偷下标i所能偷到的最大金钱数2、递推公式分为偷下标i和不偷下标i如果偷下标i的话那么0-i的最大金钱数就是之前偷的最大金钱数也就是dp[i-2]因为没法偷下标为i-1的房间那么当不偷下标i的话那么0-i的最大金钱数就是dp[i-1]了两者中取最大值3、dp数组初始化由于当前的最大金钱和前面两个状态有关所以所有的值一定是和dp[0]和dp[1]有关dp[0]表示0-0的最大金钱所以一定选下标为0的房间dp[1]是0-1的最大金钱所以只能选一个选最大者即可4、遍历顺序由于是找包含最后一个房间的最大金钱所以一定要从前向后遍历才可以5、打印dp数组主要用于debug 代码: class Solution {public int rob(int[] nums) {if (nums.length1) return nums[0];if (nums.length2) return Math.max(nums[0],nums[1]);int[] dp new int[nums.length];//初始化dp[0] nums[0];dp[1] Math.max(nums[0],nums[1]);for (int i 2;inums.length;i){//递推公式偷第i天和不偷第i天//从小到大遍历dp[i] Math.max(dp[i-2]nums[i],dp[i-1]);}return dp[nums.length-1];} }Leetcode 213. 打家劫舍 II 题目链接: 打家劫舍 II 自己的思路:不好处理环的问题 正确思路:将环的问题处理成两个子问题一个是不考虑最后一间房间一个是不考虑第一间房间然后根据这两种线性情况求最大值线性情况就是打家劫舍一的情况这里我们对打家劫舍一的代码做了优化使用三个变量来代替原来的dp数组 代码: class Solution {public int rob(int[] nums) {int len nums.length;if (len1) return nums[0];//两种情况取最大值return Math.max(robaction(Arrays.copyOfRange(nums,0,nums.length-1)),robaction(Arrays.copyOfRange(nums,1,nums.length)));}//打家劫舍一的代码简化版public int robaction(int[] nums){int x0,z0,y;for (int num:nums){y z;z Math.max(xnum,y);x y;}return z;} }Leetcode 337. 打家劫舍 III 题目链接: 打家劫舍 III 自己的思路:好难 正确思路:树形dp没接触过完全没有思路这道题要使用后序遍历来递归二叉树因为我们要求左右子树所能偷到的最多的钱然后再求中间节点所能偷到最多的钱一次次向上递归最后返回给根节点递归三部曲1、递归参数和返回值递归参数就是当前节点返回值是一个维度为2的一维数组res这里我们选择res[0]表示偷当前节点res[1]表示不偷当前节点2、终止条件当当前节点为null时直接返回全为0的一维数组即可3、单层逻辑这里我们拿一点节点来说明当偷当前结点的房间时那么一定不能偷左右孩子的房间valnode.valleft[1]right[1]当不偷当前结点的房间时我们要分情况进行讨论因为我们不一定必须偷左右孩子的房间我们要从中选择最大值来判断所以valmax(left[0],left[1])max(right[0],right[1])然后将这两个数组成一维数组返回即可 代码: class Solution {public int rob(TreeNode root) {//索引0表示偷 索引1表示不偷int[] res robac(root);return Math.max(res[0],res[1]);}public int[] robac(TreeNode node){if (nodenull) return new int[2];int[] left robac(node.left);int[] right robac(node.right);//偷当前结点int val1 node.val left[1]right[1];//不偷当前节点int val2 Math.max(left[0],left[1])Math.max(right[0],right[1]);return new int[]{val1,val2};} }
http://www.w-s-a.com/news/494630/

相关文章:

  • 合肥网站建设团队简述网站内容管理流程
  • 网站广告是内容营销吗wordpress增加背景图片
  • 网站建设技术jsp课程设计响应式布局网站开发
  • 东莞网站排名优化seo套路网站怎么做的
  • 我做网站网络建站一般多少钱
  • 如何快速提升网站关键词排名房地产网站开发毕业设计
  • 做网站 提交源码 论坛sem分析是什么意思
  • 网站建设与部署阿里云大学百度付费推广有几种方式
  • 作品集怎么做网站个人简历模板免费下
  • 工业网站素材重庆关键词自动排名
  • 拖拽式网站建设费用微网站怎么做的好名字
  • 长沙电信网站备案谷歌推广怎么做最有效
  • 网站建设与管理总结报告华为开发者联盟
  • 门诊部网站建设天空建筑网站
  • 扬州市城乡建设网站高端品牌鞋子有哪些牌子
  • 杭州网站建设招聘网长沙网络销售公司
  • 网站制作一年多少钱免费做电子章网站
  • 信誉好的营销网站建设徐州市铜山新区建设局网站
  • 建行网站关于我们山西seo和网络推广
  • 1m带宽做网站怎么样深圳网站建设制作开发公司
  • 网站建设 服务内容 费用郴州网站建设公司哪里有
  • 网站关键词重要性育才网站建设
  • 网络安全形势下怎么建设学校网站wordpress最新主题下载
  • 自己建设网站需要什么条件.gs域名做网站怎么样
  • 网上做公益的网站推广手机卡返佣平台
  • 网站是公司域名是个人可以南京建设银行官方网站
  • 做互联网网站的会抓百度网盟推广 网站
  • 商务网站开发设计结论微信报名小程序怎么制作
  • 网站建设销售简历wordpress七比2
  • 制作网站报价工程项目查询哪个网站