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

怎么免费做网站宣传平台有哪些

怎么免费做网站,宣传平台有哪些,去类似美团网站做软件开发,企业网络解决方案问题描述 思路分析 这道题的核心任务是找出所有不超过给定价格 m 的菜肴中,最常见的菜肴价格,最后返回该价格的出现次数。 1. 题意理解: 给定一个最大价格 m,小C只会选择价格不超过 m 的菜。菜单上有 n 道菜,每道菜…

问题描述

在这里插入图片描述


思路分析

这道题的核心任务是找出所有不超过给定价格 m 的菜肴中,最常见的菜肴价格,最后返回该价格的出现次数。

1. 题意理解:

  • 给定一个最大价格 m,小C只会选择价格不超过 m 的菜。
  • 菜单上有 n 道菜,每道菜有一个价格,价格用数组 w 存储。
  • 需要找出价格不超过 m 的菜中,最多可以点多少道价格相同的菜。

2. 解题步骤:

  • 过滤价格:首先,我们要从价格数组中筛选出所有小于或等于 m 的价格,因为小C只会选择这些价格的菜。
  • 统计频率:然后,对这些符合条件的菜的价格进行统计,找出每个价格出现的次数。
  • 找出最大频率:最终,我们找出出现次数最多的价格,并返回这个最大次数。

3. 实现方法:

  • 遍历菜肴价格:我们需要遍历菜单上的每道菜,检查价格是否小于或等于 m。如果符合条件,就记录下它的频率。
  • 使用哈希表(HashMap):我们使用一个哈希表来存储价格和对应的频率。哈希表的键是价格,值是该价格出现的次数。
  • 找出最大值:遍历哈希表,找出出现次数最多的价格,最后返回该次数。

哈希表相关方法可见:一篇文章让你学会Java之哈希表操作


参考代码(Java)

import java.util.HashMap;public class Main {public static long solution(int m, int[] w) {// 用于存储价格 <= m 的频率HashMap<Integer, Integer> priceCount = new HashMap<>();// 统计价格 <= m 的频率for (int price : w) {if (price <= m) {priceCount.put(price, priceCount.getOrDefault(price, 0) + 1);}}// 找到最大频率int maxCount = 0;for (int count : priceCount.values()) {maxCount = Math.max(maxCount, count);}return maxCount;}public static void main(String[] args) {// 测试用例System.out.println(solution(6, new int[]{2, 3, 3, 6, 6, 6, 9, 9, 23}) == 3); System.out.println(solution(4, new int[]{1, 2, 4, 4, 4}) == 3); System.out.println(solution(5, new int[]{5, 5, 5, 5, 6, 7, 8}) == 4); }
}

代码分析

solution 方法:

这个方法的目的是根据给定的最大价格 m,在菜单价格数组 w 中找出价格不超过 m 的菜肴,统计每个价格的出现次数,然后返回出现次数最多的菜肴的价格出现次数。

  • 输入参数

    • m: 这是小C可以接受的最大价格。
    • w: 一个整数数组,代表餐馆菜单中每道菜的价格。
  • 返回值

    • 返回一个整数,表示价格最常出现的次数。
1. 创建 HashMap 记录频率:
HashMap<Integer, Integer> priceCount = new HashMap<>();
  • 使用 HashMap<Integer, Integer> 来存储每个价格及其出现的频率。键是菜品的价格,值是该价格出现的次数。
2. 遍历价格数组 w 并统计频率:
for (int price : w) {if (price <= m) {priceCount.put(price, priceCount.getOrDefault(price, 0) + 1);}
}
  • 遍历数组 w 中的每个价格 price,如果这个价格小于或等于 m(即符合小C的要求),就将其频率加 1。
  • priceCount.getOrDefault(price, 0) 表示如果 price 已经在 priceCount 中存在,则返回该价格的当前频率,否则返回默认值 0
  • 然后将该价格的频率更新为原来的频率加 1。
3. 找出最大频率:
int maxCount = 0;
for (int count : priceCount.values()) {maxCount = Math.max(maxCount, count);
}
  • 遍历 priceCount 中的所有频率值,找到其中最大的频率。
  • Math.max(maxCount, count) 用来更新 maxCount,保留最大频率。
4. 返回最大频率:
return maxCount;
  • 最后返回最大频率,即小C可以选择的最多价格相同的菜肴的数量。

总结:

  • HashMap 用于统计频率:通过遍历菜品价格并更新每个价格的出现次数,使用 getOrDefault 来确保价格不在 priceCount 中时,能够正确初始化为 0。
  • 最大频率的查找:通过遍历哈希表的所有值,找到最大的频率,最后返回。
  • 时间复杂度:遍历数组 w 和哈希表的操作,整体时间复杂度是 O(n),其中 n 是菜单价格的数量。
http://www.dt0577.cn/news/11738.html

相关文章:

  • 猎头公司找的工作怎么样长沙靠谱seo优化费用
  • 花样云做网站怎样网络营销有本科吗
  • 江门建设局网站重庆网站seo公司
  • 唐山做网站那家好百度应用app下载
  • 有没有专门做飞卢小说盗版的网站旺道seo优化软件怎么用
  • 天津做网站推广的公司外贸推广代理
  • 微信做网站的公司晚上免费b站软件
  • 肇庆网站开发哪家专业如何推广品牌
  • 前端做项目的网站花西子网络营销策划方案
  • 青岛seo排名扣费seo视频教程
  • dedecms5.7 财经网站百度怎么推广广告
  • 网站外链查询山西seo优化公司
  • 网站建设中的色彩搭配seo站外推广有哪些
  • 中国建设银行app官方下载北京seo人员
  • 深圳市8号公告最新消息seo黑帽教程视频
  • 公安部网站备案网站建设与管理属于什么专业
  • 官方网站内容更新需要怎么做百度建站多少钱
  • 新疆建设兵团纪委监察部网站谷歌seo怎么做
  • 酒店机票最便宜的网站建设企业邮箱
  • 网站建设 模仿阿里云官网百度搜索指数排行
  • 淘宝客推广网站模板最新旅游热点
  • app软件开发制作公司电话搜索引擎优化的作用
  • 潍坊哪个网站公司做优化好中国十大企业培训公司
  • 长沙做产检玛丽亚m网站公司做个网站多少钱
  • 如何建设专题网站程序员培训机构排名前十
  • java web网站开发框架东营优化公司
  • 做网站的软件page什么软件可以推广自己的产品
  • 珠海做网站制作惠州seo推广外包
  • 做中国o2o网站领导网络营销专业就业前景
  • 广州站在哪个区如何创建网页链接