使用的是遍历搜索的方式,根据矩阵的规则,写好跳出条件,减少循环次数。之后会用二叉搜索树再实现一次。
下面是基于python3.4的数组矩阵输入方法:
1.import numpy as np
2.arr = [1,2,3,4,5,6,7,8,9]
3.matrix_a = np.array(arr)2.
4.手动定义一个空数组:arr =[],链表数组:a = [1,2,[1,2,3]]。
Python, 是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum于1989年发明,第一个公开发行版发行于1991年。
Python是纯粹的自由软件, 源代码和解释器CPython遵循 GPL(GNU General Public License)协议[2] 。Python语法简洁清晰,特色之一是强制用空白符(white space)作为语句缩进。
Python具有丰富和强大的库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中[3] 有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C/C++重写,而后封装为Python可以调用的扩展类库。需要注意的是在您使用扩展类库时可能需要考虑平台问题,某些可能不提供跨平台的实现。
7月20日,IEEE发布2017年编程语言排行榜:Python高居首位。
按照你的要求编写的Python语言的矩阵程序如下
#!/usr/bin/python# -*- coding: UTF-8 -*-
def printMatrix(n):
arr = [ [0 for i in range(n)] for j in range(n)]
curNum = 1
for i in range(0,2*n-1):
if i%2 == 0:
for j in range(0,n):
for k in range(0,n):
if j+k==i:
arr[j][k] = curNum
curNum=curNum+1
else:
for j in range(n-1,-1,-1):
for k in range(n-1,-1,-1):
if j+k==i:
arr[j][k] = curNum
curNum=curNum+1
for i in range(0,n):
for j in range(0,n):
print (arr[i][j],"\t",end='')
print ("\n")
printMatrix(10)