两个二维数组相加_python 两个二维数组相加 - CSDN
精华内容
参与话题
  • 用成员函数重载运算符“+”和“-”,将两个二维数组相加和相减。要求第一个二维数组的值由构造函数设置,另一个二维数组的值由键盘输入。
  • 二维数组合并值相加

    千次阅读 2018-12-06 15:40:13
    问题:两个二维数组,其中某一个字段需要相加,前提是site_id pay_type org_id 相同的值才累加 aaa $aInfo1 =[ [ "site_id"=> 1, "pay_type"=> 101, "org_id"...

    问题:两个二维数组,其中某一个字段需要相加,前提是site_id  pay_type  org_id  相同的值才累加  aaa

    $aInfo1 =[
                [
                     "site_id"=> 1,
                     "pay_type"=> 101,
                     "org_id"=>'102',
                     "aaa"=> "100"
                ],
                [
                    "site_id"=> 1,
                    "pay_type"=> 103,
                    "org_id"=>'102',
                    "aaa"=> "200"
                ],
                [
                    "site_id"=> 1,
                    "pay_type"=> 101,
                    "org_id"=>'103',
                    "aaa"=> "300"
                ],
                [
                    "site_id"=> 1,
                    "pay_type"=> 103,
                    "org_id"=>'2',
                    "aaa"=> "400"
                ],
            ];
    $aInfo2 =[
                [
                    "site_id"=> 1,
                    "pay_type"=> 101,
                    "org_id"=>'102',
                    "aaa"=> "500"
                ],
                [
                    "site_id"=> 2,
                    "pay_type"=> 109,
                    "org_id"=>'102',
                    "aaa"=> "600"
                ],
                [
                    "site_id"=> 1,
                    "pay_type"=> 101,
                    "org_id"=>'103',
                    "aaa"=> "700"
                ],
                [
                    "site_id"=> 2,
                    "pay_type"=> 103,
                    "org_id"=>'2',
                    "aaa"=> "800"
                ],
            ];
    //第一种写法,n方,效率低
    $aInfo = [];
    
            for ($i = 0; $i < count($aInfo2); $i++){
                //unset($aInfo2[$i]['flag']);
                $flag = 0;
                $sum = $aInfo2[$i]['aaa'];
                for ($j = $i + 1; $j < count($aInfo2); $j++){
                    if ($aInfo2[$i]['site_id'] == $aInfo2[$j]['site_id']&& $aInfo2[$i]['pay_type'] == $aInfo2[$j]['pay_type'] && $aInfo2[$i]['org_id'] == $aInfo2[$j]['org_id'] && !isset($aInfo2[$j]['flag'])) {
                        $sum = $sum + $aInfo2[$j]['aaa'];
                        $aInfo[$i] = [
                            "site_id"=> $aInfo2[$i]['site_id'],
                            "pay_type"=> $aInfo2[$i]['pay_type'],
                            "org_id"=> $aInfo2[$i]['org_id'],
                            "aaa"=> $sum
                        ];
                        $aInfo2[$j]['flag'] = 1;
                        $flag = 1;
                    }
                }
                if ($flag == 0 && !isset($aInfo2[$i]['flag'])) {
                    $aInfo[$i] = $aInfo2[$i];
                }
            }
    
    //第二种
    $aInfo = [];
            foreach ($aInfo2 as $k => $v) {
                $key = $v['site_id'].'-'.$v['pay_type'].'-'.$v['org_id'];
                if (isset($aInfo[$key])) {
                    $aInfo[$key]['aaa'] = $aInfo[$key]['aaa'] + $v['aaa'];
                }else {
                    $aInfo[$key] = $v;
                }
            }
    $aInfo = array_values($aInfo);

     

    展开全文
  • 通过改变运算符可以完成不同的操作!!!
    //通过改变运算符可以完成不同的操作!!!
    //两个二维数组进行"加减乘除"
            static void Mains(string[] args)
            {
                int[,] A = new int[,] { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } };
                int[,] B = new int[,] { { 12, 11, 2 }, { 6, 34, 4 }, { 7, 10, 45 } };
                int[,] C = new int[3, 3];
    
                for (int i = 0; i < 3; i++)
                {
                    for (int j = 0; j < 3; j++)
                    {
                        C[i, j] = A[i, j] * B[i, j];
                    }
                }  
    
                Console.WriteLine("A二维数组:");
                for (int i = 0; i < 3; i++)
                {
                    for (int j = 0; j < 3; j++)
                    {
                        Console.Write(A[i, j] + "\t");
                    }
                }
                Console.WriteLine();
                Console.WriteLine("B二维数组:");
                for (int i = 0; i < 3; i++)
                {
                    for (int j = 0; j < 3; j++)
                    {
                        Console.Write(B[i, j] + "\t");
                    }
                }
                Console.WriteLine();
                Console.WriteLine("相加得出C:");
                for (int i = 0; i < 3; i++)
                {
                    for (int j = 0; j < 3; j++)
                    {
                        Console.Write(C[i, j] + "\t");
                    }
                }
    			Console.Read();
            }
    
    展开全文
  • 简单的二维数组相加

    2019-11-13 20:50:44
    二维数组相加减是我前几天刚学的一小练习,就是可以简单的计算加减乘除 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ...

    二维数组相加减是我前几天刚学的一个小练习,就是可以简单的计算加减乘除

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace ConsoleApp2
    {
        class Program
        {
            static void Main(string[] args)
            {
                int[,] a = new int[,] { { 1, 2, 4 }, { 3, 6, 9 }, { 4, 7, 8 } };   //定义一个二维数组a,赋值
                int[,] b = new int[,] { { 2, 3, 5 }, { 4, 5, 7 }, { 5, 8, 9 } };   //定义一个二维数组b,赋值
                int i;     //定义两个循环变量i,j
                int j;
                int[,] c = new int[3, 3];       //定义一个二维数组c
                Console.WriteLine("输出原来A的值");      //输出a的值
                for (i = 0; i <a.GetLength(0); i++)      //利用for循环输出a的值
                {
                    for (j = 0;  j<b.GetLength(1); j++)
                    {
                        Console.Write(a[i,j]+" ");
                    }
                    Console.WriteLine();
                }
                Console.WriteLine("输出原来B的值");       //输出b的值
                for (i = 0; i < a.GetLength(0); i++)      //利用for循环输出b的值
                {
                    for (j = 0; j < b.GetLength(1); j++)
                    {
                        Console.Write(b[i, j] + " ");
                    }
                    Console.WriteLine();
                }
                Console.WriteLine("两数相加的值为");     //输出a,b相加的结果就是c的值
                for (i = 0; i < a.GetLength(0); i++)        //利用for循环输出两数相加的值
                {
                    for (j = 0; j < b.GetLength(1); j++)
                    {
                        c[i, j] = a[i, j] + b[i, j];      //利用两个二维数组相加输出结果
                        Console.Write(c[i, j] + " ");       //输出结果c
                    }
                    Console.WriteLine();
                }
                Console.Read();
            }
        }
    }
    
    

    这是我写完两数相加的结果
    在这里插入图片描述
    其实两数相减相乘相除就和我刚刚写的一样,就改一改符号就可以

    展开全文
  • https://www.wangmingchang.com/3837.html
    展开全文
  • 两个二维数组分别同列相加然后在执行两个外层数组之间的运算 今天跟朋友讨论了一个刚好遇到的算术问题,菜鸡互啄了一番,把互啄的结果抛出来给大家看下 需求 后台返回两个二维数组 ,第一个二位数组里面是人数,第二个...
  • 今天遇到一需求,求二维数组的和,尽量在一行代码中完成:  关于二维数组求和的几种方法:  a = [[1,2],[3,4],[5,6]]  1.sum(map(sum,a)) #first, map(func,a) 函数是对a中的每一元素进行sum...
  • python 多维数组相加

    千次阅读 2015-04-14 23:02:10
    lst=[(12, 33, 56), (11, 3, 9), (45, 0, 21),(1,2,3)] b = lambda lst :[sum(i) for i in (list(zip(*lst)))] print "b ============",b(lst)
  • 种PHP二维数组合并的方式

    万次阅读 2018-08-10 09:05:53
    本文主要和大家分享第一种合并方式:通过PHP的数组API给出的array_merge方法来合并一个数组 ,希望能帮助到大家。 $a = array(array("1","2"),array("3","4")); $b = ...
  • 1.extend方法c1 = ["Red","Green","Blue"] c2 = ["Orange","Yellow","Indigo"] c1.extend(c2) c1 == ["Red","Green","Blue","Orange","Yellow",...直接相加c1 = ["Red","Green","Blue"] c2 = ["Orange","Yellow","I
  • Java算法——二维数组的遍历,求和

    万次阅读 2016-08-10 22:08:16
    public class Array2BianLi { public static void main(String[] args) { int[][] arr = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } };... System.out.println("遍历二维数组:"); for (int i = 0; i
  • php 二维数组key相同的value相加

    千次阅读 2018-07-06 16:37:56
    我感觉这方法效率高于我自己写的,所以给记录下$arr = array( array( 'user_id' =&gt; 100, 'goods_id' =&gt; 10, 'number' =&gt; 1, ), array( 'user_id' =&gt;...
  • 使用numpy创建二维数组

    万次阅读 2019-07-13 16:53:12
    array_1 = np.ones([10,10]) #创建一10行10列填充值为1的二维数组 array_0 = no.zeros([3,5]) #创建一3行5列填充值为0的二维数组 2 对二维数组中的一元素进行操作 array_1[i,j] += 5 #对...
  • 1、使用数组函数:array_column() 返回输入数组中某个单一列的值 2、使用数组求和函数:array_sum() 返回数组中值的和 3、echo array_sum(array_column($your_array, 'money')); $coupon_price = array_sum...
  • 输入 1 2 3 4 5 1 2 3 4 5   输出 2 4 6 8 10   样例输入 1 2 3 4 5 ... 每个数组只有五元素 #include &lt;stdio.h&gt; int main() { int a[5],b[5],c[5],i; for(i=0;i&lt...
  • 二维数组的某一字段求和

    千次阅读 2014-08-27 21:29:26
    方法一: array_sum(array_map(create_function('$...方法: array_sum(array_map(function($val){return $val['size'];}, $arr)); 对于windows系统,这种方法均可用。 对于Linux系统,只有方法一可用,如果是方
  • //定义两个数组 $first 和 $second $first = array( array( "uid"=>'1', "name"=>'wang', ), array( "uid"=>2, "name"=>'zhang', ), array( "uid"=>3,
  • OpenCV图像的矩阵操作

    千次阅读 2013-05-31 15:08:05
    图像的矩阵操作主要由一下函数实现矩阵和图像的基本操作函数名称描述cvAbs计算数组中所有元素的绝对值cvAbsDiff计算两个...两个数组的元素的加权相加运算(alpha融合)cvAvg计算数组所有元素的平均值cvAvgSdv计算数组
  • 二维数组及遍历

    千次阅读 2019-09-12 20:28:59
    什么是二维数组二维数组和一维数组一样,一维数组存放元素,二维数组存放一维数组,实质也是存储数据的一容器对象。 二维数组在定义上和一维数组一样,动态初始化和静态初始化。 二维数组的动态初始化方式 数据...
1 2 3 4 5 ... 20
收藏数 23,006
精华内容 9,202
关键字:

两个二维数组相加