题解 | #牛牛的矩阵乘法#

牛牛的矩阵乘法

https://www.nowcoder.com/practice/4356eb31276b4b7689a4cf0997647f88

import copy
x = [[13, -1, 4], [5, 0, 6], [1, 9, -3]]
# y = x.copy()
y = copy.deepcopy(x)
# print(y)
# for i in range(len(y)):
#     for j in range(len(y[i])):
#         y[i][j] += 1
# 因为该题目答案错了,根据题目答案的意思y矩阵并没有在x的矩阵的对应位置的元素值加1,而是完全等于x矩阵。所以注释了上段代码。
# print(y)

# z = [[]]
# 这样操作的效果相当于对[0]*3的一维列表复制了3次,也就是说,当更改其中一个列表的值时,实际上对z列表中的这3个列表都修改了值。
# z = [[0] * 3] * 3
# 这个赋初值的方法有问题,一旦这样做,那么后面的列表都和前面的列表的元素值一样,
# 因为是直接相乘赋值的,相当于后面两个直接复制了前面定义的那一个两次。
# z = [[0 for i in range(3)] for j in range(3)]
# 这样才是正确的
z = list(list(0 for i in range(3)) for _ in range(3))
# 这样也是正确的
# 但下面这样是错误的,这样是相当于创建了1行3列的二维数组。
# z = list(list(0 for _ in range(3)))
# 总之,有几个嵌套的list()函数就是几维数组,有几个嵌套的[]就是几维数组。

# z = [[0,0,0],[0,0,0],[0,0,0]]
# print(z)
# z = [[0] * 3 for _ in range(3)]
for i in range(len(y)):  # 行
    for j in range(len(y[i])):  # 列
        # z.append()
        #         for k in x[i]:
        #             k * y[j][i]
        #             z[i][j] += k * y[j][i]
        #         z[i][j] = x[i][j] * y[i][j]
        length = 0
        width = 0
        while length < len(x) and width < len(x):
            z[i][j] += x[i][width] * y[length][j]
            # print(z[1][0])
            length += 1
            width += 1
print(z)

全部评论

相关推荐

嵐jlu:我是山川🐔里🐔🧱的,阿里系简历全过; 你这简历一看就还是半成品啊,没有荣誉经历奖项什么的吗?
投递阿里巴巴集团等公司10个岗位
点赞 评论 收藏
分享
06-13 17:33
门头沟学院 Java
顺序不记了,大致顺序是这样的,有的相同知识点写分开了1.基本数据类型2.基本数据类型和包装类型的区别3.==和equals区别4.ArrayList与LinkedList区别5.hashmap底层原理,put操作时会发生什么6.说出几种树型数据结构7.B树和B+树区别8.jvm加载类机制9.线程池核心参数10.创建线程池的几种方式11.callable与runnable区别12.线程池怎么回收线程13.redis三剑客14.布隆过滤器原理,不要背八股,说说真正使用时遇到了问题没有(我说没有,不知道该怎么回答了)15.堆的内存结构16.自己在写项目时有没有遇见过oom,如何处理,不要背八股,根据真实经验,我说不会17.redis死锁怎么办,watchdog机制如何发现是否锁过期18.如何避免redis红锁19.一个表性别与年龄如何加索引20.自己的项目的QPS怎么测的,有没有真正遇到大数量表21.说一说泛型22.springboot自动装配原理23.springmvc与springboot区别24.aop使用过嘛?动态代理与静态代理区别25.spring循环依赖怎么解决26.你说用过es,es如何分片,怎么存的数据,1000万条数据怎么写入库中27.你说用limit,那么在数据量大之后,如何优化28.rabbitmq如何批次发送,批量读取,答了延迟队列和线程池,都不对29.计网知不知道smtp协议,不知道写了对不对,完全听懵了30.springcloud知道嘛?只是了解反问1.做什么的?短信服务,信息量能到千万级2.对我的建议,基础不错,但是不要只背八股,多去实际开发中理解。面试官人不错,虽然没露脸,但是中间会引导我回答问题,不会的也只是说对我要求没那么高。面完问我在济宁生活有没有困难,最快什么时候到,让人事给我聊薪资了。下午人事打电话,问我27届的会不会跑路,还在想办法如何使我不跑路,不想扣我薪资等。之后我再联系吧,还挺想去的😭,我真不跑路哥😢附一张河科大幽默大专图,科大就是大专罢了
查看30道真题和解析
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务