前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【每周一坑】螺旋矩阵

【每周一坑】螺旋矩阵

作者头像
Crossin先生
发布2018-04-17 11:03:39
7990
发布2018-04-17 11:03:39
举报

今天这题,看起来挺简单,实际写出来并不容易。在以前公司我曾把它做过招聘的笔试题,结果惨不忍睹,不得不拿掉。

输出如图的螺旋矩阵:

代码语言:javascript
复制
 1   2   3   4
12  13  14   5
11  16  15   6
10   9   8   7

附加题:

输入一个正整数 N,输出以 N 为边长的螺旋矩阵。(比如上图就是 N 为 4 的结果)

期待各位同学提交解答。

提交代码可以使用 paste.ubuntu.com 或 codeshare.io 等代码分享网站,只需将代码复制上去保存,即可获得一个分享地址,非常方便。

【解答】校验文件哈希

在上次的文章里的参考链接里已经有了一个解法。这里我们也给出一个参考代码:

代码语言:javascript
复制
import hashlib
import sys

# 获取 HASH 值
def check_hash(file_path):
    res = {}
    source = open(file_path, 'rb').read()
    res['md5'] = hashlib.md5(source).hexdigest()
    res['sha1'] = hashlib.sha1(source).hexdigest()
    res['sha256'] = hashlib.sha256(source).hexdigest()
    res['sha512'] = hashlib.sha512(source).hexdigest()
    return res

# 打印 hash 值
if __name__ == '__main__':
    for key, value in check_hash(sys.argv[1]).items():
        print(key + ": " + value)

# 使用方法
# 命令行下 python file_hash.py your_file_path
# 可显示不同加密算法的结果

在上期提交的作业中,@徐大龙 同学的代码考虑了读取大文件时优化问题:

https://github.com/PeytonXu/learn-python/blob/master/cases/hash_file/hash_file.py

@Hurray 同学计算了多种 hash 算法:

https://paste.ubuntu.com/24814203/

『码上行动』在线学习班正在开放中,详情请回复 码上行动 查看

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-06-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Crossin的编程教室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档