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

推荐系统网站开发网站开发研究的方法与技术路线

推荐系统网站开发,网站开发研究的方法与技术路线,5站合一 网站建设,花都网站建设公司天蝎信息LeetCode题目: 56. 合并区间738. 单调递增的数字968. 监控二叉树2845. 统计趣味子数组的数目(每日一题4-26) 其他: 今日总结 往期打卡 56. 合并区间 跳转: 56. 合并区间 学习: 代码随想录公开讲解 问题: 以数组 intervals 表示若干个区间的集合,其中单个区间为 i…

LeetCode题目:

  • 56. 合并区间
  • 738. 单调递增的数字
  • 968. 监控二叉树
  • 2845. 统计趣味子数组的数目(每日一题4-26)

其他:

今日总结
往期打卡


56. 合并区间

跳转: 56. 合并区间

学习: 代码随想录公开讲解

问题:

以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间

思路:

按开头排列,看看前一个能不能覆盖当前的开头,能就更新当前区间,不能就记录上一个区间

复杂度:

  • 时间复杂度: O ( n l o g n ) O(nlogn) O(nlogn)
  • 空间复杂度: O ( n ) O(n) O(n)

代码:

class Solution {public int[][] merge(int[][] intervals) {Arrays.sort(intervals,(a, b)->a[0]-b[0]);List<int[]> list = new ArrayList<>();int n = intervals.length;for(int i=1;i<n;i++){if(intervals[i-1][1]>=intervals[i][0]){intervals[i][0] = intervals[i-1][0];intervals[i][1] = Math.max(intervals[i-1][1],intervals[i][1]);}else{list.add(intervals[i-1]);}}list.add(intervals[n-1]);int[][] ans = new int[list.size()][2];int j=0;for(int[] i:list) ans[j++]=i;return ans;}
}

738. 单调递增的数字

跳转: 738. 单调递增的数字

学习: 代码随想录公开讲解

问题:

当且仅当每个相邻位数上的数字 xy 满足 x <= y 时,我们称这个整数是单调递增的。

给定一个整数 n ,返回 小于或等于 n 的最大数字,且数字呈 单调递增

思路:

贪心,一旦递减,后面剩的-1,前面全部变成9
如果不用字符串的话建议记录完翻转

复杂度:

  • 时间复杂度: O ( l o g n ) O(logn) O(logn)
  • 空间复杂度: O ( 1 ) O(1) O(1)

代码:

class Solution {public int monotoneIncreasingDigits(int n) {int tmp = 0;int[] nums = {9,99,999,9999,99999,999999,9999999,99999999,999999999};int b = 0;while (n > 0) {tmp *= 10;if (n % 10 < n/10%10) {tmp = nums[b];n /= 10;n--;} else {tmp += n % 10;n /= 10;}b++;}int ans = 0;while(tmp>0){ans*=10;ans+=tmp%10;tmp/=10;}return ans;}
}

968. 监控二叉树

跳转: 968. 监控二叉树

学习: 代码随想录公开讲解

问题:

给定一个二叉树,我们在树的节点上安装摄像头。

节点上的每个摄影头都可以监视其父对象、自身及其直接子对象。

计算监控树的所有节点所需的最小摄像头数量。

思路:

贪心,能不装就不装
需要分析三种情况,已覆盖监控,安装监控,未覆盖监控
子节点有未覆盖就一定要安监控
否则有监控当前就是已覆盖
剩下的就是子节点都覆盖,自身返回未覆盖等父节点安
最后还要特判一下根节点,未覆盖就安装监控
安装时计数

复杂度:

  • 时间复杂度: O ( n ) O(n) O(n)
  • 空间复杂度: O ( n ) O(n) O(n)

代码:

class Solution {int ans = 0;int dfs(TreeNode root){if(root==null) return 2;int a = dfs(root.left);int b = dfs(root.right);if(a==0||b==0){ans++;return 1;}else if(a==1||b==1){return 2;}return 0;}public int minCameraCover(TreeNode root) {if(root.left==null&&root.right==null) return 1;if(dfs(root)==0) ans++;return ans;}
}

2845. 统计趣味子数组的数目(每日一题4-26)

跳转: 2845. 统计趣味子数组的数目

学习: 灵茶山艾府题解

问题:

给你一个下标从 0 开始的整数数组 nums ,以及整数 modulo 和整数 k 。

请你找出并统计数组中 趣味子数组 的数目。

如果 子数组 nums[l…r] 满足下述条件,则称其为 趣味子数组 :

在范围 [l, r] 内,设 cnt 为满足 nums[i] % modulo == k 的索引 i 的数量。并且 cnt % modulo == k 。
以整数形式表示并返回趣味子数组的数目。

注意:子数组是数组中的一个连续非空的元素序列。

思路:

前缀计数,当前cnt大于等于k,就加上之前余数为(cnt-k)%modulo的个数
需要初始化0处为1,让刚好满足的情况下先记一个

复杂度:

  • 时间复杂度: O ( n ) O(n) O(n)
  • 空间复杂度: O ( n ) O(n) O(n)

代码:

class Solution {public long countInterestingSubarrays(List<Integer> nums, int modulo, int k) {int n = nums.size();Map<Integer,Integer> map = new HashMap<>();int sum = 0;long ans = 0;map.put(0,1);for(int i=0;i<n;i++){if(nums.get(i)%modulo==k){sum++;}if(sum>=k)ans+=map.getOrDefault((sum-k)%modulo,0);map.merge(sum%modulo,1,Integer::sum);}return ans;}
}

总结

练习了贪心和前缀和.

往期打卡

代码随想录算法训练营第二十六天

代码随想录算法训练营第二十五天

代码随想录算法训练营第二十四天

代码随想录算法训练营第二十三天

代码随想录算法训练营周末四

代码随想录算法训练营第二十二天(补)

代码随想录算法训练营第二十一天

代码随想录算法训练营第二十天

代码随想录算法训练营第十九天

代码随想录算法训练营第十八天

代码随想录算法训练营第十七天

代码随想录算法训练营周末三

代码随想录算法训练营第十六天

代码随想录算法训练营第十五天

代码随想录算法训练营第十四天

代码随想录算法训练营第十三天

代码随想录算法训练营第十二天

代码随想录算法训练营第十一天

代码随想录算法训练营周末二

代码随想录算法训练营第十天

代码随想录算法训练营第九天

代码随想录算法训练营第八天

代码随想录算法训练营第七天

代码随想录算法训练营第六天

代码随想录算法训练营第五天

代码随想录算法训练营周末一

代码随想录算法训练营第四天

代码随想录算法训练营第三天

代码随想录算法训练营第二天

代码随想录算法训练营第一天


文章转载自:

http://R1zUmqBY.zknjy.cn
http://Hqrhi0ki.zknjy.cn
http://1PpKA1lA.zknjy.cn
http://Th0hK5Qb.zknjy.cn
http://rncubdLP.zknjy.cn
http://SqJCrTB6.zknjy.cn
http://jk0JOOjz.zknjy.cn
http://fGDSYuAY.zknjy.cn
http://onn7MmhD.zknjy.cn
http://UqN4Luxy.zknjy.cn
http://Vmzda5B3.zknjy.cn
http://q133PVo4.zknjy.cn
http://DxvOsWdY.zknjy.cn
http://4eBlbVnA.zknjy.cn
http://ZYAPJTVT.zknjy.cn
http://Dszkx9Ur.zknjy.cn
http://elvKsfgl.zknjy.cn
http://kei0aO5a.zknjy.cn
http://p0bYrKZh.zknjy.cn
http://uuMPT98P.zknjy.cn
http://IrRQOmyZ.zknjy.cn
http://rknTVUMp.zknjy.cn
http://qz7DHUPI.zknjy.cn
http://qZs0fOQy.zknjy.cn
http://4le81mjX.zknjy.cn
http://u1poRPhc.zknjy.cn
http://bEXtRd8D.zknjy.cn
http://RSSDwryo.zknjy.cn
http://P2GGhkyR.zknjy.cn
http://f7Nn3Lru.zknjy.cn
http://www.dtcms.com/wzjs/612124.html

相关文章:

  • 成都制作网站公司WordPress导航类主题主题
  • 影视公司网站设计tint wordpress
  • 兼职做调查哪个网站好电商代运营公司怎么样
  • 单页营销网站后台销售系统软件
  • 手机网站制作代码福田做商城网站建设哪家技术好
  • 备案不关闭网站怎么样用vps建网站备案
  • 横向网站如何删除wordpress模板底部的签名
  • 江门专用网站建设南昌有哪些企业网站
  • 职业院校专题建设网站wordpress卖东西
  • 如何用手机创建网站wordpress sae 安装主题
  • 目前网站建设用哪种语言wordpress 500 php版本
  • 广州天河网站制作wordpress电商优秀
  • 投票网站定制网站开发需要多少钱新闻
  • 联通企业网站建设百度会员
  • 网站开发实施方案网络营销与线上营销的区别
  • 绍兴专门做网站的公司时尚网站网页设计
  • 阿里云手机版网站建设深圳vi设计公司哪家专业
  • 网站的意思网页设计与制作教程第2版
  • 简单建站的网站网站建设系统服务机构
  • 网站页脚有什么作用北京最大的商场
  • 青岛网站制作选ls15227做海报设计的网站
  • 软件开发前端做抖音seo用哪些软件
  • 天津网站排名中国建设银行官网站金银纪念币
  • 衡水网站建设怎么做如何确定网站建设 栏目
  • 常见门户网站的基本功能国内做任务得数字货币的网站
  • 一般网站的宽度烟台艺术学校官网
  • 网站页面关键词优化同一源代码再建设一个网站
  • 游戏推广网站如何做的怎么买网站
  • 个人建设网站还要备案么自己制作简易网页
  • 建设企业网站优势wordpress媒体库删除