内螺旋矩阵和双螺旋矩阵(python)
题主最近在学数据结构
内螺旋矩阵
#内螺旋矩阵
# def interSpiralMatrix(size):
# if (size % 2 != 1):#size必须是奇数
# size += 1
# spiralMatrix = [([0] * size) for i in range(size)]#生成矩阵
# x, y, side = int(size / 2), int(size / 2), size - 1
# for i in range(1, size ** 2 + 1):#坐标的变化是 x++ , y ++, x--, y--,,,i 表示所有的值
# spiralMatrix[y][x] = i
# if (y <= -x + side and y <= x):#划分四个区域,然后就是通过直线来分开
# x += 1
# elif(-x + side < y and y < x):
# y += 1
# elif(x<=y and -x + side < y):
# x -= 1
# elif(x<y and y<=-x+side):
# y -= 1
# for matrix in spiralMatrix:
# print "\t".join(map(lambda x : str(x), matrix))
# interSpiralMatrix(5)
双螺旋矩阵
# def pairterSpiralMatrix(size):
# if (size % 2 != 1):
# size += 1
# arr = [([0] * size) for i in range(size)]#生成矩阵
# max = (size * size + 1) / 2#矩阵最大值
# x, y = size / 2, size / 2
# arr[y][x] = 1#中心点
# y -= 1#向上移动一步
# arr[y][x] = arr[size - 1 - y][size - 1 - x] = 2
# num, step = 2, 1#表示每次存取的数字
# while num < max:#双螺旋矩阵赋值动作同时进行,step不是表示程序赋值的次数,而是表示程序赋值的方向,
# if step % 2 == 1:#奇数步 右下,左上
# for i in range(step * 2 - 1):
# num += 1
# x += 1#每次只是x增加1,
# arr[y][x] = arr[size - 1 - y][size - 1 - x] = num#向右,对称赋值
# for i in range(step * 2 + 1):#i表示次数,之所以每次会出现i每次相隔为2,向右的步数加上2等于向下的步数,
# num += 1
# y += 1#每次增加y,增加i次
# arr[y][x] = arr[size - 1 - y][size - 1 - x] = num#向下
# if (num == max):
# break
# step += 1
# else:#偶数步。向左的步数加上2等于向上的步数,左上,右下
# for i in range(step * 2 - 1):
# num += 1
# x -= 1
# arr[y][x] = arr[size - 1 - y][size - 1 - x] = num#向左
# for i in range(step * 2 + 1):
# num += 1
# y -= 1
# arr[y][x] = arr[size - 1 - y][size - 1 - x] = num#向上,对称赋值
# if (num == max):#最后跳出循环
# break
# step += 1#步子一直增加
# for matrix in arr:
# print "\t".join(map(lambda x: str(x), matrix))
# pairterSpiralMatrix(8)
内螺旋矩阵和双螺旋矩阵(python)相关推荐
- 混淆矩阵是什么?Python多分类的混淆矩阵计算及可视化(包含原始混淆矩阵及归一化的混淆矩阵):基于skelarn框架iris数据集
混淆矩阵是什么?Python多分类的混淆矩阵计算及可视化(包含原始混淆矩阵及归一化的混淆矩阵):基于skelarn框架iris数据集 目录
- python进行矩阵计算公式_纯python进行矩阵的相乘运算的方法示例
本文介绍了纯python进行矩阵的相乘运算的方法示例,分享给大家,具体如下: def matrixMultiply(A, B): # 获取A的行数和列数 A_row, A_col = shape(A) ...
- python计算相关矩阵_Numpy使用大全(python矩阵相关运算大全)-Python数据分析基础2...
//2019.07.10 python数据分析基础--numpy(数据结构基础) import numpy as np: 1.python数据分析主要的功能实现模块包含以下六个方面: (1)numpy ...
- python实现矩阵叉乘_矩阵乘法的纯Python实现 | 离开Python库!!
点击关注我哦 一篇文章带你了解矩阵乘法的纯Python实现 在<这篇文章>中,我们有简单提到"矩阵乘法"的相关知识,如果你不记得了,可以复习一下这张图片. 想起来了没? ...
- python矩阵中插入矩阵_Python | 矩阵的痕迹
python矩阵中插入矩阵 The sum of diagonal elements of a matrix is commonly known as the trace of the matrix. ...
- python numpy常用操作、Numpy 多维数组、矩阵相乘、矩阵乘以向量
python numpy常用操作 Numpy基本操作 # 导入numpy import numpy as np # 生成numpy数组 x = np.array([1.0, 2.0, 3.0]) pr ...
- python连乘函数_动态规划之矩阵连乘问题Python实现方法
本文实例讲述了动态规划之矩阵连乘问题Python实现方法.分享给大家供大家参考,具体如下: 给定n个矩阵{A1,A2,-,An},其中Ai与Ai+1是可乘的,i=1,2 ,-,n-1.如何确定计算矩阵 ...
- 干货来袭!!!3天0基础Python实战项目快速学会人工智能必学数学基础全套(含源码)(第1天)线性代数篇:矩阵、向量及python实战
第1天:线性代数篇:矩阵.向量.实战编程 第2天:微积分篇:极限与导数.梯度下降.积分.实战编程 第3天:概率分析篇:条件概率与全概率.贝叶斯公式.实战项目 目录 前言 一.矩阵在AI中的应用 二.矩 ...
- Python矩阵计算类:计算矩阵加和、矩阵乘积、矩阵转置、矩阵行列式值、伴随矩阵和逆矩阵
最近在Python程序设计中遇到一道设计矩阵计算类的题目,原题目要求计算矩阵加和和矩阵乘积,而我出于设计和挑战自己的目的,为自己增加难度,因此设计出矩阵计算类,不仅可以求出矩阵加和和矩阵乘积,还能计算 ...
最新文章
- 解题报告:P5960 【模板】差分约束算法(及常用技巧)
- 基于ESP32智能车竞赛比赛系统硬件初步调试-5-6
- 【翻译】HTML5基于浏览器的媒体播放器:可以离线播放你的mp3文件
- python表格对齐_python str.format 中文对齐的细节问题,
- 常用的数据统计Sql 总结
- missing legacy device support
- C#LeetCode刷题之#374-猜数字大小(Guess Number Higher or Lower)
- 【Kafka】kafka AdminClient 闲时关闭连接
- 彻底理解Python切片
- C++中的struct与class继承方式
- 51单片机实现简单计算器
- 如何撰写专利说明书摘要?
- Java前后端分离项目跨域问题
- 解决strongOD与olly advanced插件冲突问题
- 看盘ABC 欧奈尔:CANSLIM法则
- 栈 括号匹配问题(C语言)
- 《精力管理》读书笔记
- 已知有十六支男子足球队参加2008 北京奥运会。写一个程序,把这16 支球队随机分为4 个组
- AFL(afl-qemu mode)的安装到放弃
- HT1623驱动LCD段码屏程序
热门文章
- 设计模式-工厂模式-php
- Python 反爬虫与反反爬虫
- Meterprete端口转发
- U盘安装CentOS 7,简单有效
- 【收藏】5个免费可商业的图片素材类网站推荐
- python脚本配置shebang行
- 天津大学902软件工程2019年考研真题回忆
- 2016net跟php哪个好,.NET_厚积薄发,拥抱.NET 2016,初识 .NET 2016
.NET 2016 概览
.NET - phpStudy...
- springcloud微服务简单实例(服务发现与注册)
- LeetCode 242. 有效的字母异位词【哈希表】