博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python 按位置关系输出矩阵元素
阅读量:6960 次
发布时间:2019-06-27

本文共 1101 字,大约阅读时间需要 3 分钟。

描述:依次输出矩阵中最近邻的元素

例如:输入:

[[1, 2, 3]

  [4, 5, 6]

   [7, 8, 9]]

输出:

[[ 1.  2.  4.  5.  3.  6.  7.  8.  9.]

 [ 2.  1.  3.  4.  5.  6.  7.  8.  9.]
 [ 3.  2.  5.  6.  1.  4.  7.  8.  9.]
 [ 4.  1.  2.  5.  7.  8.  3.  6.  9.]
 [ 5.  1.  2.  3.  4.  6.  7.  8.  9.]

思想:采用坐标进行判断,距离中心点一跳的元素坐标与中心点的坐标的平方差小于2,依次类推

import numpy as np#zhaodaozaizhidingfanweineideshuzia=np.array([[1,2,3],[4,5,6],[7,8,9]])b=a[0][0]c,d=a.shapee=np.zeros(shape=[c*d,c*d])# print (d)k=0def sround1(distance,m,n,wend,hend):    e[m*3+n][0]=a[m][n]    k=1    for d in range(distance):        for i in range(wend):            for j in range(hend):                if np.square(i-m)+np.square(j-n)<=2*np.square(d) and np.square(i-m)+np.square(j-n)>2*np.square(d-1):                    e[m*3+n][k]=a[i][j]                    k=k+1                    print (e)def start(c, d):    d=max(c,d)    for i in range(c):        for j in range(d):            sround1(d,i,j,c,d)    print (e)if __name__=='__main__':    start(3,3)

 [ 6.  2.  3.  5.  8.  9.  1.  4.  7.]

 [ 7.  4.  5.  8.  1.  2.  3.  6.  9.]
 [ 8.  4.  5.  6.  7.  9.  1.  2.  3.]
 [ 9.  5.  6.  8.  1.  2.  3.  4.  7.]]

 

转载于:https://www.cnblogs.com/zhibei/p/9719165.html

你可能感兴趣的文章
两个路径与四个centos7命令
查看>>
学习之初
查看>>
Linux启动顺序
查看>>
java nio的一点整理(一)
查看>>
Android的三种解析方式
查看>>
Git回退到旧版本
查看>>
Java本地缓存CRUD测试,LocalCache出自简书
查看>>
python爬虫——爬虫简介
查看>>
SQLCMD命令的几种用法
查看>>
1,Spring-mvc添加参数校验
查看>>
区块链100讲:世界银行说,比特币给各国央行打了个样
查看>>
Easyui的tree和右键菜单
查看>>
怎么修改truffle中的solidity版本?
查看>>
我的第一个基于springboot的接口
查看>>
BCH易于使用不只是说说而已
查看>>
webpack配置(第四步:html篇(进阶篇))
查看>>
shell基础、命令操作、通配符
查看>>
深入理解JVM(五)——垃圾回收器
查看>>
spring mvc 环境搭建
查看>>
装饰者模式
查看>>