List中有三个整型数组对象,如何比较数组对象中的元素

问题描述

三个数组长度一样,我想比较三个数组对象的第一个元素,找出最大的保留,以此类推;int[]a1=newint[]{3,6,5,0};int[]a2=newint[]{1,9,7,6};int[]a3=newint[]{5,3,5,8};比较后得到新数组对象ax=newint[]{5,9,7,8};请问如何在List中实现呢?thanks

解决方案

解决方案二:
笨办法:1、循环数组长度次2、每次比较3个数,取最大数3、存入新数组
解决方案三:
能给个确切的例子吗?谢过了
解决方案四:
int[]a1=newint[]{3,6,5,0};int[]a2=newint[]{1,9,7,6};int[]a3=newint[]{5,3,5,8};List<int[]>list=newList<int[]>();list.Add(a1);list.Add(a2);list.Add(a3);int[]a4=newint[4];for(inti=0;i<a4.Length;i++){a4[i]=list.Max(arr=>arr[i]);}

a4的结果是5,9,7,8
解决方案五:
int[]result=newint[a1.Length];for(inti=0;i<a1.Length;i++){result[i]=getMax(i);}intgetMax(intindex){intt=a1[index];if(t<a2[index]){t=a2[index];}if(t<a3[index]){t=a3[index];}returnt;}
解决方案六:
int[]a1=newint[]{3,6,5,0};int[]a2=newint[]{1,9,7,6};int[]a3=newint[]{5,3,5,8};int[]ax=newint[4];inttmp;for(inti=0;i<4;i++){tmp=a1[i]>a2[i]?a1[i]:a2[i];tmp=tmp>a3[i]?tmp:a3[i];ax[i]=tmp;}

解决方案七:
int[]a1=newint[]{3,6,5,0};int[]a2=newint[]{1,9,7,6};int[]a3=newint[]{5,3,5,8};int[]ax=newint[4];inttmp;for(inti=0;i<4;i++){tmp=Math.Max(a1[i],a2[i]);tmp=Math.Max(tmp,a3[i]);ax[i]=tmp;}

解决方案八:
int[]a1=newint[]{3,6,5,0};int[]a2=newint[]{1,9,7,6};int[]a3=newint[]{5,3,5,8};varresult=Enumerable.Range(0,a1.GetLength(0)).Select(x=>(newint[]{a1[x],a2[x],a3[x]}).Max()).ToArray();
解决方案九:
我用的是VS2005开发的,其他的办法还有吗?最好给出例子,多谢
解决方案十:
引用8楼weilu0328的回复:

我用的是VS2005开发的,其他的办法还有吗?最好给出例子,多谢

上面几个楼已经有了,循环判断吧
解决方案十一:
varresult=a1.Select((x,y)=>new{x,y}).Concat(a2.Select((x,y)=>new{x,y})).Concat(a3.Select((x,y)=>new{x,y})).GroupBy(x=>x.y).Select(x=>x.Max(y=>y.x)).ToArray();

解决方案十二:
如果要是加上List遍历的话,VS05如果来判断呢谢我写成这样不知知道正确不//colCount数组的长度privatestaticint[]AssignMaxWidthBetweenTables(List<int[]>lstMaxLenOfColWidth,intcolCount){inttemp;int[]intRet=newint[colCount-1];for(inti=0;i<lstMaxLenOfColWidth.Count;i++){for(intj=0;j<colCount;j++){temp=Math.Max(lstMaxLenOfColWidth[i][j],lstMaxLenOfColWidth[i+1][j]);temp=Math.Max(temp,lstMaxLenOfColWidth[i+2][j]);intRet[j]=temp;}}}
解决方案十三:
关键是我要在外层的Listobj中循环呀,还有人知道吗

时间: 2024-08-07 10:49:15

List中有三个整型数组对象,如何比较数组对象中的元素的相关文章

在一个整型数组中有一个元素的出现次数超过了数组长度的一半,试设计一个 在时间上尽可能高效的算法,找出这个元素。

题目:在一个整型数组中有一个元素的出现次数超过了数组长度的一半,试设计一个 在时间上尽可能高效的算法,找出这个元素.要求:(1)给出算法的基本设计思想.(2)根据设计思想,采用C或C++或Java语言描述算法,关键之处给出注释.(3)说明你所设计算法的时间复杂度和空间复杂度. (1)基本的设计思想: 一个数字出现的次数超过了长度的一半, 那么我们可以这样认为这个数字出现的个数一定大于其他全部数字出现的个数之和.算法的步骤如下: ①设数组为data[],数组长度为n,i=1.置currentAxi

c语言-关于整型数组中数字使用printf输出的问题

问题描述 关于整型数组中数字使用printf输出的问题 #include int main(void) { int number[40]; scanf("%s", number); printf("%d", number[0]); return 0; } 数字以字符格式存在数组里,既然字符以数字的形式存储,那为何用%d输出是垃圾值呢?用%c却是正常的 解决方案 字符格式和整型是不同的,字符0对应着48,字符1对应着整数49.... 解决方案二: 字符'0',对应0x

怎么取得整型数组中连续相同的数字并输出打印,用java实现,也就是输出副本,只输出那些连续相同的数字

问题描述 怎么取得整型数组中连续相同的数字并输出打印,用java实现,也就是输出副本,只输出那些连续相同的数字 怎么取得整型数组中连续相同的数字并输出打印,用java实现,也就是输出副本,只输出那些连续相同的数字 解决方案 判断一下一个数字前后是否有相同的,有相同的话就输出,比如下面这样: int array [] = { 2,1,3,4,4,4,9,9,1,0,1,1,2 }; //只输出连续的数字 System.out.print("连续数字:"); for (int i=0;i&

c语言,对结构体中的整型数组进行赋值.....

问题描述 c语言,对结构体中的整型数组进行赋值..... c语言中,在结构体里声明整型数组,想对整型数组赋值,只能用循环吗?如果我想这样呢..... typedef struct Data { int arr[10]; }Data; int main() { Data data; data = (Data)malloc(sizeof(Data)); data->arr[10]={1,3,2,4,5,6,7,8,9,0}; . ... ... ... } 这样可以吗? 解决方案 绝对不可以.数组作

C语言删除无序整型数组中的重复元素及时间复杂度

遇到一个题,大概要求是写一个函数处理来去掉一个无序的整型数组(例如int i_arr[] = { 1, 2, 2, 3, 4, 2, 3, 5 };)中重复的元素,并返回最终的长度. 1 思路 看到这道题的时候,第一反应就是需要删除元素,然后联想到单链表.但是后面一想还是不划算,因为单链表还得先把数组中的元素遍历到链表节点中. 换一下思路,可以先创建另一个整型数组(大小和原数组一样),然后正向遍历数组中的元素,比较当前元素和它前面所有的元素是否重复,如果这个整数之前没有出现过,那么就放到新的数组

C++按照正态分布来排列整型数组元素_C 语言

题目要求如下: 给定一个数组input[], 如果数组长度n为奇数,则将数组中最大的元素放到output[]数组最中间的位置, 如果数组长度n为偶数,则将数组中最大的元素放到 output[] 数组中间两个位置偏右的那个位置上, 然后再按从大到小的顺序,依次在第一个位置的两边,按照一左一右的顺序,依次存放剩下的数. 这种处理后结果,如果按照元素的值表示一种分布的图形的话,那绘制后的图形应该是正态分布. 关于正态分布: 正态分布(Normal distribution)又名高斯分布(Gaussia

整型数组转换为字符串

package cn.ic; //将一个整形数组转换成字符串,然后输出 public class StringTest1 { public static void main(String[] args) { StringDemo1 demo1=new StringDemo1(); int array []=new int []{1,2,3,4}; System.out.println(demo1.method(array)); } } class StringDemo1{ public Stri

C#中怎么将一个int型数组转换为字符串型数组?

问题描述 本人第一帖,希望能得到各位朋友的出手相助.不甚感激! 解决方案 解决方案二:我也刚学,不过帮你顶起来解决方案三:int[]ay;string[]result=ay.Select(i=>i.ToString()).ToArray(); 解决方案四:引用2楼的回复: C#codeint[]ay;string[]result=ay.Select(i=>i.ToString()).ToArray(); +1,学习了解决方案五:引用2楼的回复: C#codeint[]ay;string[]re

js将类数组对象转换成数组对象_javascript技巧

在标准浏览器中,好像只要对象存在length属性,就能把它转换为数组,但IE就不尽然. [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] 接着我们看看各大类库的处理: 复制代码 代码如下: //jQuery的makeArray var makeArray = function( array ) { var ret = []; if( array != null ){ var i = array.length; // The window, strings (and functions)