力扣算法練習BM45—滑塊窗口的最大值

題目

給定一個長度為 n 的數組 num 和滑動窗口的大小 size ,找出所有滑動窗口里數值的最大值。

例如,如果輸入數組{2,3,4,2,6,2,5,1}及滑動窗口的大小3,那么一共存在6個滑動窗口,他們的最大值分別為{4,4,6,6,6,5}; 針對數組{2,3,4,2,6,2,5,1}的滑動窗口有以下6個: {[2,3,4],2,6,2,5,1}, {2,[3,4,2],6,2,5,1}, {2,3,[4,2,6],2,5,1}, {2,3,4,[2,6,2],5,1}, {2,3,4,2,[6,2,5],1}, {2,3,4,2,6,[2,5,1]}。

窗口大于數組長度或窗口長度為0的時候,返回空。

數據范圍: 1≤n≤10000,0≤size≤10000,數組中每個元素的值滿足 ∣val∣≤10000

要求:空間復雜度 O(n),時間復雜度)O(n)

示例1

輸入:[2,3,4,2,6,2,5,1],3

返回值:[4,4,6,6,6,5]

解題思路

1.如果滑動窗口的大小為0,則直接返回空列表

2.不為0,則依次以滑動窗口的大小作為每次遍歷的長度,每次滑動向后移動一位,依次遍歷查找每個窗口中的最大值

題解

#
# 代碼中的類名、方法名、參數名已經指定,請勿修改,直接返回方法規定的值即可
#
# 
# @param num int整型一維數組 
# @param size int整型 
# @return int整型一維數組
#
class Solution:def maxInWindows(self , num: List[int], size: int) -> List[int]:# 1.如果滑動窗口的大小為0,則直接返回空列表if size==0: return[]# 2.不為0,則依次以滑動窗口的大小作為每次遍歷的長度,每次滑動向后移動一位,依次遍歷查找每個窗口中的最大值max_list =[]n=0l=len(num)while n+size<=l:max=num[n]for i in range(n,n+size):print(num[i])if max<num[i]:max=num[i]max_list.append(max)n+=1return max_list

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/160786.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/160786.shtml
英文地址,請注明出處:http://en.pswp.cn/news/160786.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

使用Python畫一棵樹

&#x1f38a;專欄【不單調的代碼】 &#x1f354;喜歡的詩句&#xff1a;更喜岷山千里雪 三軍過后盡開顏。 &#x1f386;音樂分享【如愿】 &#x1f970;歡迎并且感謝大家指出我的問題 文章目錄 &#x1f339;Turtle模塊&#x1f384;效果&#x1f33a;代碼&#x1f6f8;代碼…

【tomcat】java.lang.Exception: Socket bind failed: [730048

項目中一些舊工程運行情況處理 問題 1、啟動端口占用 2、打印編碼亂碼 ??&#xfffd;&#xfffd; 13, 2023 9:33:26 &#xfffd;&#xfffd;&#xfffd;&#xfffd; org.apache.coyote.AbstractProtocol init &#xfffd;&#xfffd;&#xfffd;&#xfffd;: Fa…

五毛QQ項目記

問題與挑戰&#xff1a;某公司為了實現某馬總造福全人類&#xff0c;紅旗插遍全球的宏偉目標&#xff0c;為應對后續用戶量激增的問題。特別安排了一次針對全體用戶的秒殺活動&#xff1a;于XXXX年XX月XX日XX時XX分XX秒開始的秒殺五毛錢一百個QQ幣的活動。每個賬戶僅限一次&…

oracle面試相關的,Oracle基本操作的SQL命令

文章目錄 數據庫-Oracle〇、Oracle用戶管理一、Oracle數據庫操作二、Oracle表操作1、創建表2、刪除表3、重命名表4、增加字段5、修改字段6、重名字段7、刪除字段8、添加主鍵9、刪除主鍵10、創建索引11、刪除索引12、創建視圖13、刪除視圖 三、Oracle操作數據1、數據查詢2、插入…

ubuntu 20.04如何切換gcc/g++/python的版本

ubuntu 20.04如何切換gcc/g/python的版本 1 安裝gcc/g/python2 設置gcc/g/python的備選項3 選擇當前系統要使用的gcc/g/python版本3.1 切換gcc/g/python版本3.2 切換示例 當系統同時存在gcc-9以及gcc-10時該如何切換讓當前的系統gcc版本指向gcc-9或是gcc-10呢&#xff1f;g也同…

Connect-The-Dots_2

Connect-The-Dots_2 一、主機發現和端口掃描 主機發現&#xff0c;靶機地址192.168.80.148 arp-scan -l端口掃描 nmap -A -p- -sV 192.168.80.148開放端口 21/tcp open ftp vsftpd 2.0.8 or later 80/tcp open http Apache httpd 2.4.38 ((Debian)) 111/tcp …

循環隊列詳解!!c 語言版本(兩種方法)雙向鏈表和數組法!!

目錄 1.什么是循環隊列 2.循環隊列的實現&#xff08;兩種方法&#xff09; 第一種方法 數組法 1.源代碼 2.源代碼詳解&#xff01;&#xff01; 1.創造隊列空間和struct變量 2.隊列判空 3.隊列判滿&#xff08;重點&#xff09; 4.隊列的元素插入 5.隊列的元素刪除 …

GIT實踐與常用命令---回退

實踐場景 場景1 回退提交 在日常工作中&#xff0c;我們可能會和多個同事在同一個分支進行開發&#xff0c;有時候我們可能會出現一些錯誤提交&#xff0c;這些錯誤提交如果想撤銷&#xff0c;可以有兩種解決辦法:回退( reset )、反做(revert) keywords&#xff1a;reset、rev…

2023軟件測試的4個技術等級,你在哪個級別?

最近&#xff0c;我們討論了軟件測試工程的的分級&#xff0c;大家都貢獻了自己的想法&#xff0c;對于大家來說&#xff0c;軟件測試人的分級其實也代表了我們的進階方向&#xff0c;職業發展。總體來說&#xff0c;測試工程師未來發展有三個方向&#xff1a; 技術精英 行業專…

層次分析法--可以幫助你做決策的簡單算法

作用 層次分析法是一個多指標的評價算法&#xff0c;主要用來在做決策時&#xff0c;給目標的多個影響因子做權重評分。特別是那些需要主觀決策的、或者需要用經驗判斷的決策方案&#xff0c;例如&#xff1a; 買房子&#xff08;主觀決策&#xff09;選擇旅游地&#xff08;…

android11 申請所有文件訪問權限

Android 11 引入了強制執行分區存儲的限制&#xff0c;導致應用默認不能訪問外部文件。 針對以前涉及較多文件的操作&#xff0c;可采用申請所有文件訪問權限的方式來解決這一問題&#xff0c;實現方式如下。 &#xff08;雖然這樣做安全性低&#xff0c;官方并不推薦這樣&…

preplexity test

Preplexity test can use model claude and gpt-4, feel speed is ok and only for $10 with coupon (below give a link). Feel ok to try reference link: https://perplexity.ai/pro?referral_codeV6UOS5PH

Shell判斷:模式匹配:case(三)

系統管理工具箱 1、需求&#xff1a;Linux提供的豐富的管理命令&#xff0c;用戶管理&#xff0c;內存管理&#xff0c;磁盤管理&#xff0c;進程管理&#xff0c;日志管理&#xff0c;文件管理&#xff0c;軟件管理&#xff0c;網絡管理等等數十個工具包。如果你能通過shell編…

【代碼隨想錄】算法訓練計劃30

【代碼隨想錄】算法訓練計劃30 1、51. N 皇后 按照國際象棋的規則&#xff0c;皇后可以攻擊與之處在同一行或同一列或同一斜線上的棋子。 n 皇后問題 研究的是如何將 n 個皇后放置在 nn 的棋盤上&#xff0c;并且使皇后彼此之間不能相互攻擊。 給你一個整數 n &#xff0c;…

微信API:探究Android平臺下Hook技術的比較與應用場景分析

微信API&#xff1a;探究Android平臺下Hook技術的比較與應用場景分析 正文&#xff1a; 在Android平臺開發中&#xff0c;Hook技術是一種常用的技術手段&#xff0c;用于在運行時修改應用程序的行為。下面對一些常見的Hook技術進行比較&#xff0c;并分析它們的適用場景和優缺…

信息系統項目管理師論文

軟考官網&#xff1a;中國計算機技術職業資格網 (ruankao.org.cn) 2020年 2020年下半年試題一&#xff1a;論信息系統項目的成本管理 2019年 2019年下半年試題一&#xff1a;論信息系統項目的整體管理 2019年下半年試題二&#xff1a;論信息系統項目的溝通管理

PCI5565反射內存網技術的應用研究

隨著嵌入式與通信技術的發展&#xff0c;數控系統經歷了由傳統的單處理器的集中式體系結構到開放式體系結構&#xff0c;再到多處理器的分布式數控系統體系結構的發展過程。分布式數控系統以高精、高速的加工特征為發展核心&#xff0c;同時以達到異構網絡間信息的無縫融合&…

分布式鎖3: zk實現分布式鎖

一 zk 實現分布式鎖 1.1 zk分布式操作命令 1.指令&#xff1a; ls / get /zookeeper create /aa "test" delete /aa set /aa "test1" 2..znode節點類型&#xff1a; 永久節點&#xff1a;create /pa…

優秀智慧園區案例 - 上海世博文化公園智慧園區,先進智慧園區建設方案經驗

一、項目背景 世博文化公園是上海的綠色新地標&#xff0c;是生態自然永續、文化融合創新、市民歡聚共享的大公園。作為世博地區的城市更新項目&#xff0c;世博文化公園的建設關乎上海城市風貌、上海文化展示、城市生態環境、市民游客體驗、上海服務品牌等&#xff0c;被賦予…

依托數據、平臺、知識增強等優勢 夸克大模型大幅降低問答幻覺率

“大模型時代&#xff0c;夸克有巨大機會創造出革新性搜索產品。”11月22日&#xff0c;夸克大模型公布了其面向搜索、生產力工具和資產管理助手的大模型技術布局。數據顯示&#xff0c;夸克千億級參數大模型登頂C-Eval和CMMLU兩大權威榜單&#xff0c;夸克百億級參數大模型同樣…