在数组a中,a[i]+a[j]=a[k],求a[k]的最大值,a[k]max——猎八哥fly

时间:2021-01-18 10:19:33

在数组a中,a[i]+a[j]=a[k],求a[k]的最大值,a[k]max。

思路:将a中的数组两两相加,组成一个新的数组。并将新的数组和a数组进行sort排序。然后将a数组从大到小与新数组比较,如果当比较到a中第二个数组时(情况二是第一个数组),仍无满足条件,则返回最大值不存在。

情况一:不考虑i和j相等的情况。此时新数组长度为a.length*(a.length-1)/2;

 import java.util.Arrays;
public class max {
public static void main(String[] args) {
int[] a ={22,23,11,12,21,46,199};
int k=0,blength;
blength = a.length*(a.length-1)/2;
int[] b = new int[blength];
for(int i=0;i<a.length;i++){
for(int j=i+1;j<a.length;j++){
b[k] = a[i]+a[j];
k++;
}
}
Arrays.sort(a);
Arrays.sort(b);
for(int i=a.length-1;i>=0;i--){
if(Arrays.binarySearch(b, a[i])>=0){
System.out.println(a[i]);
break;
}
if(i==1){
System.out.println("最大值不存在");
}
} }
}

情况二:考虑i和j相等的情况。此时新数组长度为blength = a.length*(a.length+1)/2;

 import java.util.Arrays;
public class max2 {
public static void main(String[] args) {
int[] a ={22,23,11,12,21,46,199};
int k=0,blength;
blength = a.length*(a.length+1)/2;
int[] b = new int[blength];
for(int i=0;i<a.length;i++){
for(int j=i+1;j<a.length;j++){
b[k] = a[i]+a[j];
k++;
}
}
for(int i=blength-a.length,j=0;i<blength;i++,j++){
b[i] = a[j]*2;
}
Arrays.sort(a);
Arrays.sort(b);
for(int i=a.length-1;i>=0;i--){
if(Arrays.binarySearch(b, a[i])>=0){
System.out.println(a[i]);
break;
}
if(i==0){
System.out.println("最大值不存在");
}
}
}
}

在数组a中,a[i]+a[j]=a[k],求a[k]的最大值,a[k]max——猎八哥fly的更多相关文章

  1. 猎八哥FLY——将数据库中的某一表中的某一列或者多列添加到另一张表的某一列中

    成绩表的字段:xueshenghao,yu,shu,yy均为int类型.新标与成绩表字段相同,不同的是成绩表中拥有数据,而新表中没有(是一张空表,一条数据都没有).需求:将成绩表中每一个人的yu,sh ...

  2. 查找二维数组list&lbrack;&rsqb;&lbrack;&rsqb;中的最大的子数组的和

    之前做过最大一维数组子数组的和的题目,现在将数组扩展成二维: 代码如下: #include<iostream> #define null -858993460 using namespac ...

  3. JS删除数组条目中重复的条目

    [腾讯2015春招web前端开发练习卷] 请给Array本地对象增加一个原型方法,它用于删除数组条目中重复的条目(可能有多个),返回值是一个包含被删除的重复条目的新数组. Array.prototyp ...

  4. 输出有序数组的中两个元素差值为指定值diff的两个元素

    题目: 输出有序数组的中两个元素差值为指定值diff的两个元素. 思路: 这与输出两个元素的和的值为一定值类似,需要两个指针,不同的是:指针不是一左一右,而是一前一后. 如果差值等于diff,则返回: ...

  5. 编写函数求整形数组a中存储的m个不重复的整数的第k大的整数&lpar;其中m&gt&semi;&equals;1&comma;1&lt&semi;&equals;k&lt&semi;&equals;m&rpar;很简单的一个思路是酱紫的:管他辣么多干啥,上来一把排序然后直接得答案

    /** * @author:(LiberHome) * @date:Created in 2019/2/28 20:38 * @description: * @version:$ *//*编写函数求整 ...

  6. 已知大小分别为m、n的两个无序数组A、B和一个常数c,求满足A&lbrack;i&rsqb;&plus;B&lbrack;j&rsqb;&equals;c的所有A&lbrack;i&rsqb;和B&lbrack;j&rsqb;

    方法一:枚举法.该方法是最容易.也是最简单的方法,枚举出数组A和数组B中所有的元素对,判断其和是否为c,如果是,则输出. 方法二:排序+二分查找法.首先,对两个数组中长度较大数组,不妨设为A,排序:然 ...

  7. 从数组A中删除在数组B中存在的元素,用C语言实现

    从数组A中删除在数组B中存在的元素,用C语言实现 考验数组操作的能力,C语言的熟练程度. //功能:从数组A中删除在数组B中也存在的数据 //输入:arrA --- 数组A // lenA --- 数 ...

  8. 6&period;7-3将数组arr中索引值为2的元素替换为&OpenCurlyDoubleQuote;bb”

    package shuzu; import java.util.Arrays; public class TH { public static void main(String[] args) { / ...

  9. &lbrack;百度&rsqb;数组A中任意两个相邻元素大小相差1,在其中查找某个数

    一.问题来源及描述 今天看了July的微博,发现了七月问题,有这个题,挺有意思的. 数组A中任意两个相邻元素大小相差1,现给定这样的数组A和目标整数t,找出t在数组A中的位置.如数组:[1,2,3,4 ...

随机推荐

  1. IOS屏幕布局

    1.iPad和iPhone的屏幕布局 在IB中,屏幕或控件的尺寸以点为单位.在视网膜技术中,1个点包括4个像素,而没有采用视网膜屏幕技术的还是1个点包括1个像素. 2.绝对布局和相对布局 3.使用Au ...

  2. 如何在DOS下用C&sol;C&plus;&plus; 编译器

    本文来自CSDN博客     ★★ 注意:以下适合 PC 环境 ★★   ●C/C++ 编译器需要的环境变数设定     古早以来,PC 上的 C 编译器,就需要两个环境变数:     LIB:这个环 ...

  3. JAVA设计原则

      1.单一职责规则(SRP):有且仅有一个原因引起类的变化. 2.依赖倒置规则(DIP): 高层模块不应该依赖底层模块,两者都用依赖接口: 接口不依赖细节: 细节依赖接口. 3.接口隔离规则:类间的 ...

  4. 详解Ajax请求(三)——jQuery对Ajax的实现及serialize&lpar;&rpar;函数对于表单域控件参数提交的使用技巧

    原生的Ajax对于异步请求的实现并不好用,特别是不同的浏览器对于Ajax的实现并不完全相同,这就意味着你使用原生的Ajax做异步请求要兼顾浏览器的兼容性问题,对于java程序员来讲这是比较头疼的事情, ...

  5. 如何使用npm构建一个react demo项目

    方法一: 1) 安装node.js环境  点我进入nodejs官网 1.1) 下载LTS(Long term support)版本,安装 1.2) 在cmd中使用以下命令查看node是否安装成功 no ...

  6. oracle-data-mining

    create user datamine identified by 123456 QUOTA UNLIMITED ON users; 然后在sqldeveloper工具界面-data miner中, ...

  7. Gazebo仿真

    1.建议在本地Ubuntu 16.04下运行仿真程序.目前Gazebo模拟器的兼容性是一大问题,在虚拟机或配置较低的电脑上可能无法运行.如果你的显卡是N卡,建议安装Ubuntu下的显卡驱动. 2.运行 ...

  8. java&period;lang&period;ClassNotFoundException&colon; com&period;mysql&period;jdbc&period;Driver 解决方法

    1.导入mysql-connector-java-5.1.26-bin.jar包,我试着把maven中自动下载下来的mysql-connector-java-5.1.26.jar包导入,还是没能解决问 ...

  9. 常用数据类型对应字节数&comma;int长度

    常用数据类型对应字节数: 这两台机器,前者32位,后者64位,测试了以下数据类型的长度: 前者: ,, 后者: ,, 不是说int会变吗,为何变得是long? 还有如果要写个通用的程序,订死必须用4个 ...

  10. elasticsearch删除索引报错【原】

    如果elasticsearch删除索引报错 curl -X DELETE 'http://10.73.26.66:9200/httpd-34-2017.08.15' {"error&quot ...