| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 数据结构与算法 -> 绝对差值和 -> 正文阅读 |
|
[数据结构与算法]绝对差值和 |
题目: 给你两个正整数数组 nums1 和 nums2 ,数组的长度都是 n 。 数组 nums1 和 nums2 的 绝对差值和 定义为所有 |nums1[i] - nums2[i]|(0 <= i < n)的 总和(下标从 0 开始)。 你可以选用 nums1 中的 任意一个 元素来替换 nums1 中的 至多 一个元素,以 最小化 绝对差值和。 在替换数组 nums1 中最多一个元素 之后 ,返回最小绝对差值和。因为答案可能很大,所以需要对 109 + 7 取余 后返回。 |x| 定义为:如果 x >= 0 ,值为 x ,或者? 如果 x <= 0 ,值为 -x 示例 1: 输入:nums1 = [1,7,5], nums2 = [2,3,5] 示例 2: 输入:nums1 = [2,4,6,8,10], nums2 = [2,4,6,8,10] 示例 3: 输入:nums1 = [1,10,4,4,2,7], nums2 = [9,3,5,1,7,4] 题解: 1.考虑用treeset列表。 首先了解其中的两个方法 (1)treeset.floor floor(E e) 方法返回在这个集合中小于或者等于给定元素的最大元素,如果不存在这样的元素,返回null。 (2)tree.ceiling ceiling(E e) 方法用来返回在此设定为大于或等于给定的元素的最小元素,如果不存在这样的元素,返回null。 解题如下: ? ? ?一开始使用long 来定义result,是因为元素的值可以很大,会超过int的范围。但是题目说要对1000000007取余后返回,并不知道原因。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 16:41:44- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |