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

咸阳企业做网站玄武模板网站制作点击查看

咸阳企业做网站,玄武模板网站制作点击查看,商务网站的建设与维护,wordpress主题替换不彻底🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…

在这里插入图片描述

🚀 算法题 🚀

🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀
🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨
🌲 作者简介:硕风和炜,CSDN-Java领域优质创作者🏆,保研|国家奖学金|高中学习JAVA|大学完善JAVA开发技术栈|面试刷题|面经八股文|经验分享|好用的网站工具分享💎💎💎
🌲 恭喜你发现一枚宝藏博主,赶快收入囊中吧🌻
🌲 人生如棋,我愿为卒,行动虽慢,可谁曾见我后退一步?🎯🎯

🚀 算法题 🚀

在这里插入图片描述
在这里插入图片描述

🍔 目录

    • 🚩 题目链接
    • ⛲ 题目描述
    • 🌟 求解思路&实现代码&运行结果
      • ⚡ 哈希表
        • 🥦 求解思路
        • 🥦 实现代码
        • 🥦 运行结果
    • 💬 共勉

🚩 题目链接

  • 2766. 重新放置石块

⛲ 题目描述

给你一个下标从 0 开始的整数数组 nums ,表示一些石块的初始位置。再给你两个长度 相等 下标从 0 开始的整数数组 moveFrom 和 moveTo 。

在 moveFrom.length 次操作内,你可以改变石块的位置。在第 i 次操作中,你将位置在 moveFrom[i] 的所有石块移到位置 moveTo[i] 。

完成这些操作后,请你按升序返回所有 有 石块的位置。

注意:

如果一个位置至少有一个石块,我们称这个位置 有 石块。
一个位置可能会有多个石块。

示例 1:

输入:nums = [1,6,7,8], moveFrom = [1,7,2], moveTo = [2,9,5]
输出:[5,6,8,9]
解释:一开始,石块在位置 1,6,7,8 。
第 i = 0 步操作中,我们将位置 1 处的石块移到位置 2 处,位置 2,6,7,8 有石块。
第 i = 1 步操作中,我们将位置 7 处的石块移到位置 9 处,位置 2,6,8,9 有石块。
第 i = 2 步操作中,我们将位置 2 处的石块移到位置 5 处,位置 5,6,8,9 有石块。
最后,至少有一个石块的位置为 [5,6,8,9] 。
示例 2:

输入:nums = [1,1,3,3], moveFrom = [1,3], moveTo = [2,2]
输出:[2]
解释:一开始,石块在位置 [1,1,3,3] 。
第 i = 0 步操作中,我们将位置 1 处的石块移到位置 2 处,有石块的位置为 [2,2,3,3] 。
第 i = 1 步操作中,我们将位置 3 处的石块移到位置 2 处,有石块的位置为 [2,2,2,2] 。
由于 2 是唯一有石块的位置,我们返回 [2] 。

提示:

1 <= nums.length <= 105
1 <= moveFrom.length <= 105
moveFrom.length == moveTo.length
1 <= nums[i], moveFrom[i], moveTo[i] <= 109
测试数据保证在进行第 i 步操作时,moveFrom[i] 处至少有一个石块。

🌟 求解思路&实现代码&运行结果


⚡ 哈希表

🥦 求解思路
  1. 该题目的求解思路比较简单,我们可以使用map来记录每一个位置出现的次数,也可以通过有序表treeset来记录元素,既可以去重,又可以保证有序,因为元素个数并不会影响最终的结果(就是题目中说的全部交换)。
  2. 遍历moveFrom和moveTo数组,先获得move的次数,加到to的次数上,最后移除move,注意,如果move和to位置想等,直接跳过即可。
  3. 最后list收集map中所有的key,并对其进行升序排序。
  4. 有了基本的思路,接下来我们就来通过代码来实现一下的解法。
🥦 实现代码
class Solution {public List<Integer> relocateMarbles(int[] nums, int[] moveFrom, int[] moveTo) {List<Integer> ans = new ArrayList<>();int n = moveFrom.length;HashMap<Integer, Integer> map = new HashMap<>();for (int v : nums) {map.put(v, map.getOrDefault(0, v) + 1);}for (int i = 0; i < n; i++) {int move = moveFrom[i], to = moveTo[i];if (move == to)continue;int cnt = map.getOrDefault(0, move);map.put(to, map.getOrDefault(0, to) + cnt);map.remove(move);}for (Map.Entry<Integer, Integer> entry : map.entrySet()) {ans.add(entry.getKey());}Collections.sort(ans);return ans;}
}
🥦 运行结果

在这里插入图片描述


💬 共勉

最后,我想和大家分享一句一直激励我的座右铭,希望可以与大家共勉!

在这里插入图片描述

在这里插入图片描述

http://www.sczhlp.com/news/136155/

相关文章:

  • 手机p2p网站搭建网站的网站
  • 做网站要学哪些代码合肥专业建设网站
  • 盐城网站建设小程序公司wordpress资源占用插件
  • 网站备案 关闭wordpress有中文版吗
  • 实用指南:《原神助手》开源神器:游戏体验大升级
  • 如何设计一个企业网站温州做公众号和做网站的地方
  • 成都医疗网站建设网页生成app怎么用
  • 长春专业网站建设学网站开发和游戏开发那个
  • 酒店网站建设论文上海建立网站公司
  • 电子商务网站系统建设进度安排微信小程序如何搭建
  • 乡镇网站建设内容规划开发一个商城需要多少钱
  • 网站模板内容页在哪全网营销的渠道
  • 怎么搭建网站视频教程珠海自适应网站
  • 旅游网站开发研究现状朝阳区网站建设推广seo
  • 旅游网站模板免费百度指数查询平台
  • 网站用ps下拉效果怎么做的ainihejian wordpress
  • 9-25
  • 电子商务网站建设与管理期末试题中国做的电脑系统下载网站
  • 上海公共招聘网站成都成华网站建设
  • 百度竞价推广培训优化的近义词
  • 免费做抽奖的h5网站网站建设公司的那些坑
  • 文化建设网站net网站建设
  • Java文件编程
  • 公司起名查询网络营销就是seo正确吗
  • 做电影平台网站怎么赚钱吗什么 门户网站
  • 网站主页流动图片怎么做长春网站建设有什么
  • 东营做营销型网站建设番禺人才网局网
  • 广告点击网站源码南宁网站推广公司
  • 做网站老板不发工资我拿尾款怎么用dw做响应式网站
  • 肇庆网站建设制作公司网站没有设置关键词