leetcode hot 100 239. 滑動窗口最大值

給你一個整數數組?nums,有一個大小為?k?的滑動窗口從數組的最左側移動到數組的最右側。你只可以看到在滑動窗口內的?k?個數字。滑動窗口每次只向右移動一位。

返回?滑動窗口中的最大值?

示例 1:

輸入:nums = [1,3,-1,-3,5,3,6,7], k = 3
輸出:[3,3,5,5,6,7]
解釋:
滑動窗口的位置                最大值
---------------               -----
[1  3  -1] -3  5  3  6  7       31 [3  -1  -3] 5  3  6  7       31  3 [-1  -3  5] 3  6  7       51  3  -1 [-3  5  3] 6  7       51  3  -1  -3 [5  3  6] 7       61  3  -1  -3  5 [3  6  7]      7

示例 2:

輸入:nums = [1], k = 1
輸出:[1]
class Solution(object):def maxSlidingWindow(self, nums, k):""":type nums: List[int]:type k: int:rtype: List[int]"""def push(x,max_queue):while max_queue:if max_queue[-1]<x:del max_queue[-1]else:breakmax_queue+=[x]# print(max_queue)def pop(x,max_queue):if max_queue[0]==x:del max_queue[0]res= []max_queue = []for i in range(min(len(nums),k)):push(nums[i],max_queue)res.append(max_queue[0])for i in range(k,len(nums)):pop(nums[i-k],max_queue)push(nums[i],max_queue)res.append(max_queue[0])return res

主要難點是原本復雜度是nk,現在我想變成n,怎么辦呢,自己設計一個有限隊列,保存最大的元素,設計oush和pop的算法。push邏輯是push一個吧前面比他小的刪除,pop的邏輯是判斷隊伍第一個是不是該pop的元素,如果是就pop

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

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

相關文章

Leetcode 189: 輪轉數組

Leetcode 189: 輪轉數組 這是一道經典問題&#xff0c;題目要求將一個數組向右輪轉 k 個位置&#xff0c;有多種解法可以快速求解&#xff0c;既可以通過額外空間&#xff0c;也可以在 O(1) 的空間復雜度內完成。本題考察數組操作、雙指針&#xff0c;以及算法優化能力。 題目…

優選算法的智慧之光:滑動窗口專題(二)

專欄&#xff1a;算法的魔法世界?????? 個人主頁&#xff1a;手握風云 目錄 一、例題講解 1.1. 最大連續1的個數 III 1.2. 找到字符串中所有字母異位詞 1.3. 串聯所有單詞的子串 1.4. 最小覆蓋子串 一、例題講解 1.1. 最大連續1的個數 III 題目要求是二進制數組&am…

Linux系統安裝Azure CLI完全指南

引言 Azure CLI是管理Azure云服務的重要命令行工具。本文將詳細介紹在Linux系統上安裝Azure CLI的兩種方法,并提供版本管理、故障排除等完整解決方案。 © ivwdcwso (ID: u012172506) 一、安裝前準備 1.1 系統要求 支持的Linux發行版: Ubuntu 20.04/22.04 LTSDebian 10/…

2025嵌入式軟件開發工程師--音頻方向

一、選擇題&#xff08;每題3分&#xff0c;共30分&#xff09; 1.以下哪個不是C語言中的關鍵字?&#xff08; &#xff09; A. int B. Float C. Define D. Return 2.以下代碼的輸出是: &#xff08; &#xff09; inta 5, b 10; printf("%d“, a b); A. 15 B.16 …

TCP/IP四層模型:從入門到精通

第一部分&#xff1a;基礎概念 1.1 什么是TCP/IP&#xff1f; - TCP/IP 是互聯網的基礎通信協議簇&#xff0c;定義了數據如何在網絡中傳輸和路由。 - 與OSI七層模型的對比&#xff1a;TCP/IP更簡化&#xff0c;分為四層&#xff0c;注重實際應用。 1.2 四層模型結構 1. 應…

【Python 數據結構 1.零基礎復習】

目錄 一、輸入與輸出 1.輸入 2.格式化輸出 二、數字與變量 1.字符串 & 整型 2.字符串 & 整型 & 浮點型 3.變量 練習 2235. 兩整數相加 三、運算與操作 1.四則運算 練習 2769. 找出最大的可達成數字 3.取整與取余 練習 2651. 計算列車到站時間 ?編輯 四、真與假 1…

什么是 MGX:MetaGPT

什么是 MGX:MetaGPT MetaGPT是由思碼逸(OpenDILab)團隊開發的一款專注于生成式AI驅動的軟件開發框架,MGX可能是其衍生或升級的相關成果,它創新性地將大語言模型引入軟件開發流程,模擬人類軟件團隊的協作方式,能讓用戶通過自然語言描述需求,即可自動生成完整的軟件項目,…

大模型時代下的數據標注革命:工具、挑戰與未來趨勢

引言 隨著大模型技術的飛速發展&#xff0c;人工智能對高質量標注數據的依賴愈發顯著。傳統的人工標注方式在效率、成本和場景適應性上逐漸顯現瓶頸&#xff0c;而大模型憑借其強大的泛化能力和多模態理解能力&#xff0c;正在推動數據標注從“勞動密集型”向“智能工業化”轉…

【azure openai】用tts實現語音對話【demo】

能實現&#xff1a; 只要替換里面的key&#xff0c;就能跑通。 key的查找方法&#xff1a; 【保姆級教程】如何在azure里快速找到openai的key和demo-CSDN博客 代碼結構&#xff1a; azure_openai_client.py main.py prompts_config.py speech_utils.py stt01.py tts01.…

Spark(5)host配置

&#xff08;一.)host配置的作用&#xff1a; hosts 文件是一個本地的文本文件&#xff0c;它的作用是將主機名映射到對應的 IP 地址&#xff0c;在 DNS&#xff08;域名系統&#xff09;解析之前&#xff0c;系統會先查詢 hosts 文件來確定目標主機的 IP 地址。 &#xff08;二…

Hive-04之存儲格式、SerDe、企業級調優

一、主題 hive表的數據壓縮和文件存儲格式hive的自定義UDF函數hive的JDBC代碼操作hive的SerDe介紹和使用hive的優化 二、要點 1. hive表的文件存儲格式 Hive支持的存儲數的格式主要有&#xff1a;TEXTFILE&#xff08;行式存儲&#xff09; 、SEQUENCEFILE(行式存儲)、ORC&…

Excel的行高、列寬單位不統一?還是LaTeX靠譜

想要生成田字格、米字格、帶拼音標準&#xff0c;方便小學生書法和練字。Word&#xff0c;Excel之類所見即所得是最容易相當的方式。但它們處理帶田字格之類背景時&#xff0c;如果沒有專用模板、奇奇怪怪的插件&#xff0c;使用起來會碰到各種問題。比如&#xff0c;Word里面用…

[免費]微信小程序(校園)二手交易系統(uni-app+SpringBoot后端+Vue管理端)【論文+源碼+SQL腳本】

大家好&#xff0c;我是java1234_小鋒老師&#xff0c;看到一個不錯的微信小程序(校園)二手交易系統(uni-appSpringBoot后端Vue管理端)&#xff0c;分享下哈。 項目視頻演示 【免費】微信小程序(校園)二手交易系統(uni-appSpringBoot后端Vue管理端) Java畢業設計_嗶哩嗶哩_bi…

【詳細講解在STM32的UART通信中使用DMA機制】

詳細講解在STM32的UART通信中使用DMA機制 目錄 詳細講解在STM32的UART通信中使用DMA機制一、DMA機制概述二、DMA在UART中的作用三、DMA的配置步驟四、UART初始化與DMA結合五、DMA傳輸的中斷處理六、DMA與中斷的結合使用七、注意事項與常見問題八、代碼示例九、總結 一、DMA機制…

M系列芯片 MacOS 在 Conda 環境中安裝 TensorFlow 2 和 Keras 3 完整指南

目錄 1. 引言2. 環境準備3. 安裝 TensorFlow 和必要依賴4. 結語Reference 1. 引言 Keras 是搞深度學習很可愛的工具&#xff0c;其友好的接口讓我總是將其作為搭建模型原型的首選。然而&#xff0c;當我希望在 M 系列芯片的MacBook Pro上使用 Keras時&#xff0c;使用Conda和P…

清華北大DeepSeek六冊

「清華北大-Deepseek使用手冊」 鏈接&#xff1a;https://pan.quark.cn/s/98782f7d61dc 「清華大學Deepseek整理&#xff09; 1&#xff0d;6版本鏈接&#xff1a;https://pan.quark.cn/s/72194e32428a AI學術工具公測鏈接:https://pan.baidu.com/s/104w_uBB2F42Da0qnk78_ew …

paddlehub hub TypeError 錯誤

pip install paddlehub hub install chinese_ocr_db_crnn_mobile 提示錯誤&#xff1a; TypeError: Descriptors cannot be created directly. If this call came from a _pb2.py file, your generated code is out of date and must be regenerated with protoc > 3.19.0…

零信任沙箱:為網絡安全筑牢“隔離墻”

在數字化浪潮洶涌澎湃的今天&#xff0c;網絡安全如同一艘船在波濤洶涌的大海中航行&#xff0c;面臨著重重挑戰。數據泄露、惡意軟件攻擊、網絡釣魚等安全威脅層出不窮&#xff0c;讓企業和個人用戶防不勝防。而零信任沙箱&#xff0c;就像是一座堅固的“隔離墻”&#xff0c;…

【String】917. 僅僅反轉字母

917. 僅僅反轉字母 - 力扣&#xff08;LeetCode&#xff09; 使用雙指針&#xff0c;一個指針指向s的開始&#xff0c;一個指向s的末尾&#xff0c;同時遍歷即可。

大語言模型學習

大語言模型發展歷程 當前國內外主流LLM模型 ?一、國外主流LLM? ?LLaMA2? Meta推出的開源模型&#xff0c;參數規模涵蓋70億至700億&#xff0c;支持代碼生成和多領域任務適配?57。衍生版本包括Code Llama&#xff08;代碼生成優化&#xff09;和Llama Chat&#xff08;對…