打印菱形

2020-05-28  本文已影响0人  Dreamsky_起航

给定一个奇数n,打印实心的菱形
示例:

输入: n = 3

输出: n = 3的菱形.png

输入:n = 5

输出: n = 5的菱形.png

来源:
相关企业:

公司 出现时间
快手 2020.04

解法:双循环
时间复杂度:O(n)
空间复杂度:O(1)
思路:将菱形拆分为上下两个三角形,分别进行打印:

 def printDiamond(self, n: int) -> void:
        for i in range(n)[0: n: 2]:
          space_count, star_count = (n - i - 1) // 2, i + 1
          print(' ' * space_count + '*' * star_count)

        for i in range(n // 2):
            space_count, star_count = i + 1, n - 2 * (i + 1)
            print(' ' * space_count + '*' * star_count)

上一篇下一篇

猜你喜欢

热点阅读