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

那个网站卖做防水的烤枪镇江网站建设dmooo

那个网站卖做防水的烤枪,镇江网站建设dmooo,东莞营销网站建,网站提交目录 1321. 餐馆营业额变化增长题目链接表要求知识点思路代码 209. 长度最小的子数组题目链接标签暴力法思路代码 滑动窗口思路代码 102. 二叉树的层序遍历题目链接标签思路代码 1321. 餐馆营业额变化增长 题目链接 1321. 餐馆营业额变化增长 表 表Customer的字段为custome… 目录 1321. 餐馆营业额变化增长题目链接表要求知识点思路代码 209. 长度最小的子数组题目链接标签暴力法思路代码 滑动窗口思路代码 102. 二叉树的层序遍历题目链接标签思路代码 1321. 餐馆营业额变化增长 题目链接 1321. 餐馆营业额变化增长 表 表Customer的字段为customer_id、name、visited_on和amount。 要求 你是餐馆的老板现在你想分析一下可能的营业额变化增长每天至少有一位顾客。 计算以 7 天某日期 该日期前的 6 天为一个时间段的顾客消费平均值。average_amount 要 保留两位小数。 结果按 visited_on 升序排序。 知识点 min()求最小值的函数。sum()求和的函数。round()四舍五入的函数。datediff()计算日期的差值的函数。注意参数的顺序对结果有影响例如datediff(2020-01-10, 2020-01-03)与datediff(2020-01-03, 2020-01-10)的结果为相反数。distinct去除某个字段的重复值。between and将结果限制到一个闭区间内。join on内连接查询两个集合的交集。 思路 本题的结果返回的是 最小日期加上6天后的所有日期 的统计统计的数据是这7天的总营业额sum(amount)和平均营业额round(sum(amount) / 7, 2)本题的难点不在于统计而是在于如何找到合适的统计范围。 首先求出所有的日期(日期可能重复要使用distinct来去重)使用子表tb_date来接收数据然后进行多表查询和限制。 对日期的第一个限制条件(或者说是对内连接的限制条件)为第一个表的日期tb_date.visited_on比第二个表的日期tb_c.visited_on晚0到6天这样一来表tb_date的每条数据 都对应 表tb_c的7条数据tb_c的7条数据的日期tb_c.visited_on 就是 tb_date的日期tb_date.visited_on的前6天和当天对tb_c对这7条数据进行统计即可(统计前先按照tb_date.visited_on分组)。 对日期的第二个限制条件为 最小日期加上6天后的日期求最小日期很方便使用min(visited_on)即可求得最小日期。求完最小日期后再加上限制tb_date.visited_on 最小日期 6。 代码 selecttb_date.visited_on,sum(amount) amount,round(sum(amount) / 7, 2) average_amount from(selectdistinct visited_onfromCustomer) tb_date joinCustomer tb_c ondatediff(tb_date.visited_on, tb_c.visited_on) between0 and6 wheretb_date.visited_on (selectmin(visited_on)fromCustomer) 6 group bytb_date.visited_on209. 长度最小的子数组 题目链接 209. 长度最小的子数组 标签 数组 二分查找 前缀和 滑动窗口 暴力法 思路 看到本题想到了一种很容易实现的思路以数组的每个元素为子数组的第一个元素然后往后遍历直到超过target。然而很遗憾这样做会超时。 代码 class Solution {public int minSubArrayLen(int target, int[] nums) {int n nums.length;int res Integer.MAX_VALUE;for (int left 0; left n; left) {int sum 0;for (int right left; right n; right) {sum nums[right];if (sum target) {res Math.min(res, right - left 1);break;}}}return res Integer.MAX_VALUE ? 0 : res;} }滑动窗口 思路 仔细看暴力法发现有很大一部分时间浪费在寻找子数组的最后一个元素的索引上所以能不能想出一种方法这种方法 在寻找到子数组的最后一个元素的索引right后 不需要 从下一个子数组的第一个元素的索引left开始寻找right。 这种方法是存在的首先要记录right的值然后在找到right子数组的和大于等于target后去除子数组头部的多余元素这里的多余元素指的是去除该元素后子数组的值仍然大于等于target的元素。在去除到极限子数组的和小于target时让right向原数组尾部移动。重复这样的操作直到right到达原数组尾部。 代码 class Solution {public int minSubArrayLen(int target, int[] nums) {int n nums.length;int res Integer.MAX_VALUE;int left 0, right 0, sum 0;while (right n) {sum nums[right];while (sum target) { // 去除子数组头部的多余元素res Math.min(res, right - left 1); // 记住要更新res的值sum - nums[left]; // 子数组的和变小left; // 左端点右移}right; // 右端点右移寻找下一个合适的right}return res Integer.MAX_VALUE ? 0 : res;} }102. 二叉树的层序遍历 题目链接 102. 二叉树的层序遍历 标签 树 广度优先搜索 二叉树 思路 本题是一道广度优先搜索的题可以使用队列来存储二叉树每层的节点在遍历每层节点时记录该节点的值并把下一层节点加入队列尾部(由于每次只遍历一层所以不会从队列中取出下一层的节点)直到队列为空。 代码 class Solution {public ListListInteger levelOrder(TreeNode root) {if (root null) { // 如果根节点为nullreturn new ArrayList(); // 则返回空链表}ListListInteger res new ArrayList(); // 结果链表LinkedListTreeNode queue new LinkedList(); // 存放每层节点的队列queue.offer(root); // 二叉树的第一层是根节点将根节点放入队列while (!queue.isEmpty()) { // 直到队列为空才退出循环ListInteger level new LinkedList(); // 存放本层节点的值的链表int size queue.size(); // 获取本层节点的数量限制本次遍历只在当前层for (int i 0; i size; i) { // 遍历本层的所有节点TreeNode curr queue.poll(); // 取出本层的节点level.add(curr.val); // 存放本层节点的值if (curr.left ! null) { // 如果当前节点的左子节点不为nullqueue.offer(curr.left); // 则将其加入队列}if (curr.right ! null) { // 如果当前节点的右子节点不为nullqueue.offer(curr.right); // 则将其加入队列}}res.add(level); // 将本层节点的值放入结果链表}return res;} }
http://www.dnsts.com.cn/news/44723.html

相关文章:

  • wordpress模板展示网站网络电话免费版
  • 淘宝客网站备案教程简单易做的的网站
  • 针对餐饮公司推广做网站方法网页设计时尚页面
  • 计算机网站建设体会誉铭摄影网站
  • 肇庆企业网站关键词优化教程手机常用网站
  • 企业网站的设计风格备案价网站
  • 公司网站建设知乎伪静态网站搬迁
  • 泉州网站建设公司首选wordpress主机内存
  • 安阳市建设安全监督站网站网站建设报价表下载
  • 辽宁网站建设公司成全视频免费观看在线看小说原著叫什么
  • 某服装公司网站建设论文品牌营销方案
  • 什么网站可以免费做找客户seo资讯网
  • 一般网站宽度手机网站模板 优帮云
  • 第一次做网站没头绪crm排名
  • 湛江市网站建设如何建设百度网站
  • 优美网站源码wordpress获取某分类下最新文章
  • 山东省建设执业资格注册管理中心网站网站app开发建设
  • 工信部网站备案查通知网站建设公司 资讯
  • 网站停留时间 从哪里获取网站开发项目报告
  • 网站优化怎么做分录品牌型网站的作用
  • 网站建设腾讯云石家庄seo网站优化
  • 有没有关于网站开发的名人访谈广州建设交易中心网站
  • 电商网站销售数据分析wordpress月份归档要收录吗
  • 源代码网站培训指定网站怎么设置路由器只访问
  • 深圳网站建设的特殊性做微分销系统多少钱
  • 网站策划的基本过程丽江市建设局官方网站
  • 专业整站优化wordpress外观选单分类添加不
  • 成都网站建设单招网运城seo
  • 做go kegg的网站四川省乐山市建设银行网站
  • 和网站签约新闻网站搭建平台demo免费