739.每日温度 python3

题目:

题目

解析:

  • 题目等价于求右边比自己的第一个数,与自己的距离。
  • 采用单调栈,单调栈就是可以求左边或者右边,最大或者最小的第一个数。

代码:

class Solution:
    def dailyTemperatures(self, T: List[int]) -> List[int]:
        result = [0] * len(T)
        
        # 单调栈
        sta = []
        for i in range(len(T)-1, -1, -1):
            while sta and T[i] >= T[sta[-1]]:
                sta.pop()
            if sta:
                result[i] = sta[-1] - i
            sta.append(i)
        return result
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以为您提供一些关于使用 Python 生成温度报表的建议。 首先,您需要获取温度数据。可以通过连接温度传感器或从气象站获取气象数据来获取温度数据。如果您只是想模拟数据,那么可以使用 Python 的随机数生成器来生成一些随机温度数据。 接下来,您可以使用 Python 中的 Pandas 库来处理和分析数据。您可以将温度数据存储在 Pandas 的 DataFrame 中,并使用该库的函数来进行数据分析和可视化。 以下是一个基本的示例代码,用于生成一个温度报表: ```python import pandas as pd import matplotlib.pyplot as plt # 模拟温度数据 temperature_data = {'日期': pd.date_range(start='2021-01-01', end='2021-12-31'), '温度': [round(x, 1) for x in np.random.normal(15, 5, 365)]} # 将数据存储在 DataFrame 中 df = pd.DataFrame(temperature_data) # 将日期列设置为索引 df = df.set_index('日期') # 计算每月平均温度 monthly_mean = df.resample('M').mean() # 绘制温度折线图 plt.plot(df.index, df['温度']) plt.title('每日温度变化') plt.xlabel('日期') plt.ylabel('温度(摄氏度)') plt.show() # 绘制每月平均温度柱状图 plt.bar(monthly_mean.index.strftime('%B'), monthly_mean['温度']) plt.title('每月平均温度') plt.xlabel('月份') plt.ylabel('温度(摄氏度)') plt.show() ``` 这段代码将生成一个折线图,显示每日温度变化,以及一个柱状图,显示每月平均温度。 希望这可以帮助您开始生成温度报表。如果您有任何疑问,请随时问我。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值