国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python實現打印螺旋矩陣功能的方法

2020-02-16 10:48:06
字體:
來源:轉載
供稿:網友

本文實例講述了Python實現打印螺旋矩陣功能的方法。分享給大家供大家參考,具體如下:

一、問題描述

輸入N, 打印 N*N 螺旋矩陣

比如 N = 3,打?。?
1 2 3
8 9 4
7 6 5

N = 4,打印:
1 2 3 4
12 13 14 5
11 16 15 6
10 9 8 7

二、思路

常規法是不斷的對數據邊界進行判斷會很復雜,不妨考慮通過遞歸的解決每一層的數字。

三、代碼

#coding:utf-8n = int(raw_input('>'))#初始化數組arr = [[0]*n for i in range(n)]#遞歸解決def dfs(arr, x, y, start, n):  if n<=0:return 0  if n==1:    arr[x][y] = start    return 0  #up  for i in range(n):    arr[x][y+i] = start    start += 1  #right  for i in range(n-1):    arr[x+1+i][y+n-1] = start    start += 1  #down  for i in range(n-1):    arr[x+n-1][y+n-2-i] = start    start += 1  #left  for i in range(n-2):    arr[x+n-2-i][y] = start    start += 1  dfs(arr,x+1,y+1,start,n-2)a = dfs(arr,0,0,1,n)#格式化輸出printl = len(str(n*n))+1format = ('%'+str(l)+'d')*nfor tmp in arr:  print format%tuple(tmp)

運行結果:

更多關于Python相關內容感興趣的讀者可查看本站專題:《Python數據結構與算法教程》、《Python加密解密算法與技巧總結》、《Python編碼操作技巧總結》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》及《Python入門與進階經典教程》

希望本文所述對大家Python程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 凤城市| 鸡东县| 池州市| 绥芬河市| 香河县| 九龙城区| 高青县| 荣成市| 盐源县| 华池县| 察雅县| 冕宁县| 塔河县| 保亭| 清涧县| 博爱县| 高碑店市| 英吉沙县| 林周县| 澄迈县| 赣榆县| 都匀市| 文水县| 栖霞市| 资源县| 昌吉市| 阜宁县| 海伦市| 南昌县| 沂源县| 公主岭市| 信丰县| 同江市| 沿河| 江油市| 天全县| 宜黄县| 德州市| 自贡市| 吕梁市| 临泽县|