{"id":409,"date":"2026-03-30T18:37:04","date_gmt":"2026-03-30T10:37:04","guid":{"rendered":"https:\/\/jiangqvweihuan.cn\/?p=409"},"modified":"2026-03-30T18:37:04","modified_gmt":"2026-03-30T10:37:04","slug":"%e6%bb%91%e5%8a%a8%e7%aa%97%e5%8f%a3","status":"publish","type":"post","link":"https:\/\/jiangqvweihuan.cn\/index.php\/2026\/03\/30\/%e6%bb%91%e5%8a%a8%e7%aa%97%e5%8f%a3\/","title":{"rendered":"\u7b97\u6cd5\u5fc3\u4f20\u00b7\u6ed1\u52a8\u7a97\u53e3\uff08\u53cc\u6307\u9488\uff09"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">\u4e00\u3001\u4ec0\u4e48\u662f\u6ed1\u52a8\u7a97\u53e3\uff1f<\/h2>\n\n\n\n<p>\u6ed1\u52a8\u7a97\u53e3\u662f\u4e00\u79cd<strong>\u4f7f\u7528\u53cc\u6307\u9488\u7ef4\u62a4\u6570\u7ec4\/\u5b57\u7b26\u4e32\u533a\u95f4<\/strong>\u7684\u7b97\u6cd5\u6280\u5de7\u3002\u5b83\u901a\u8fc7\u52a8\u6001\u8c03\u6574\u7a97\u53e3\u7684\u5de6\u53f3\u8fb9\u754c\uff0c\u5728 O(n) \u65f6\u95f4\u5185\u89e3\u51b3\u5b50\u6570\u7ec4\/\u5b50\u4e32\u76f8\u5173\u95ee\u9898\uff0c\u907f\u514d\u66b4\u529b\u679a\u4e3e\u7684 O(n\u00b2) \u590d\u6742\u5ea6<\/p>\n\n\n\n<p>\u6838\u5fc3\u601d\u60f3<br>\u7528\u4e24\u4e2a\u6307\u9488&nbsp;<code>left<\/code>&nbsp;\u548c&nbsp;<code>right<\/code>&nbsp;\u5b9a\u4e49\u4e00\u4e2a\u7a97\u53e3&nbsp;<code>[left, right)<\/code>\uff0c\u901a\u8fc7\u79fb\u52a8\u6307\u9488\u6765\u6269\u5927\u6216\u7f29\u5c0f\u7a97\u53e3\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>\u6269\u5927\u7a97\u53e3<\/strong>\uff1a\u79fb\u52a8&nbsp;<code>right<\/code>\uff0c\u5c06\u65b0\u5143\u7d20\u7eb3\u5165\u7a97\u53e3<\/li>\n\n\n\n<li><strong>\u7f29\u5c0f\u7a97\u53e3<\/strong>\uff1a\u79fb\u52a8&nbsp;<code>left<\/code>\uff0c\u5c06\u8fc7\u671f\u5143\u7d20\u79fb\u51fa\u7a97\u53e3<\/li>\n<\/ul>\n\n\n\n<p>\u4e24\u79cd\u7c7b\u578b<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>\u7c7b\u578b<\/th><th>\u7279\u70b9<\/th><th>\u5178\u578b\u95ee\u9898<\/th><\/tr><\/thead><tbody><tr><td><strong>\u5b9a\u957f\u7a97\u53e3<\/strong><\/td><td>\u7a97\u53e3\u5927\u5c0f\u56fa\u5b9a\uff0c\u76f4\u63a5\u5e73\u79fb<\/td><td>\u6ed1\u52a8\u7a97\u53e3\u6700\u5927\u503c\/\u6700\u5c0f\u503c\u3001\u5927\u5c0f\u4e3ak\u7684\u5b50\u6570\u7ec4\u548c<\/td><\/tr><tr><td><strong>\u53d8\u957f\u7a97\u53e3<\/strong><\/td><td>\u7a97\u53e3\u5927\u5c0f\u52a8\u6001\u53d8\u5316\uff0c\u6839\u636e\u6761\u4ef6\u8c03\u6574<\/td><td>\u6ee1\u8db3\u6761\u4ef6\u7684\u6700\u77ed\/\u6700\u957f\u5b50\u6570\u7ec4<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>\u65f6\u95f4\u590d\u6742\u5ea6\u5bf9\u6bd4<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>\u65b9\u6cd5<\/th><th>\u590d\u6742\u5ea6<\/th><th>\u8bf4\u660e<\/th><\/tr><\/thead><tbody><tr><td>\u66b4\u529b\u679a\u4e3e<\/td><td>O(n\u00b2) \u6216 O(n\u00b3)<\/td><td>\u679a\u4e3e\u6240\u6709\u5b50\u6570\u7ec4\uff0c\u91cd\u590d\u8ba1\u7b97<\/td><\/tr><tr><td>\u6ed1\u52a8\u7a97\u53e3<\/td><td>O(n)<\/td><td>\u6bcf\u4e2a\u5143\u7d20\u6700\u591a\u8fdb\u7a97\u53e3\u4e00\u6b21\u3001\u51fa\u7a97\u53e3\u4e00\u6b21<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u4e8c\u3001\u6ed1\u52a8\u7a97\u53e3\u901a\u7528\u4ee3\u7801\u6a21\u677f<\/h2>\n\n\n\n<p>\u6a21\u677f1\uff1a\u5b9a\u957f\u6ed1\u52a8\u7a97\u53e3<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/ \u5b9a\u957f\u6ed1\u52a8\u7a97\u53e3\uff1a\u7ef4\u62a4\u5927\u5c0f\u4e3ak\u7684\u7a97\u53e3\nint fixedWindow(vector&lt;int&gt;&amp; nums, int k) {\n    int n = nums.size();\n    if (n &lt; k) return 0;\n    \n    \/\/ 1. \u8ba1\u7b97\u7b2c\u4e00\u4e2a\u7a97\u53e3\n    int window_sum = 0;\n    for (int i = 0; i &lt; k; i++) {\n        window_sum += nums&#91;i];\n    }\n    int ans = window_sum;\n    \n    \/\/ 2. \u7a97\u53e3\u6ed1\u52a8\n    for (int i = k; i &lt; n; i++) {\n        window_sum += nums&#91;i] - nums&#91;i - k];  \/\/ \u65b0\u5143\u7d20\u8fdb\uff0c\u65e7\u5143\u7d20\u51fa\n        ans = max(ans, window_sum);\n    }\n    return ans;\n}<\/code><\/pre>\n\n\n\n<p>\u6a21\u677f2\uff1a\u53d8\u957f\u6ed1\u52a8\u7a97\u53e3\uff08\u6c42\u6700\u77ed\/\u6700\u5c0f\uff09<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/ \u53d8\u957f\u6ed1\u52a8\u7a97\u53e3\uff1a\u5bfb\u627e\u6ee1\u8db3\u6761\u4ef6\u7684\u6700\u77ed\u5b50\u6570\u7ec4\nint variableWindow(vector&lt;int&gt;&amp; nums, int target) {\n    int left = 0, window_sum = 0, ans = INT_MAX;\n    \n    for (int right = 0; right &lt; nums.size(); right++) {\n        window_sum += nums&#91;right];  \/\/ \u6269\u5927\u7a97\u53e3\n        \n        \/\/ \u5f53\u7a97\u53e3\u6ee1\u8db3\u6761\u4ef6\u65f6\uff0c\u5c1d\u8bd5\u7f29\u5c0f\u7a97\u53e3\u5bfb\u627e\u66f4\u4f18\u89e3\n        while (window_sum &gt;= target) {\n            ans = min(ans, right - left + 1);\n            window_sum -= nums&#91;left];\n            left++;\n        }\n    }\n    return ans == INT_MAX ? 0 : ans;\n}<\/code><\/pre>\n\n\n\n<p>\u6a21\u677f3\uff1a\u53d8\u957f\u6ed1\u52a8\u7a97\u53e3\uff08\u914d\u5408\u54c8\u5e0c\u8868\uff0c\u5904\u7406\u5b50\u4e32\u95ee\u9898\uff09<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/ \u53d8\u957f\u6ed1\u52a8\u7a97\u53e3 + \u54c8\u5e0c\u8868\uff1a\u5904\u7406\u5b50\u4e32\u5339\u914d\u95ee\u9898\nint stringWindow(string s, string t) {\n    unordered_map&lt;char, int&gt; need, window;\n    for (char c : t) need&#91;c]++;\n    \n    int left = 0, right = 0;\n    int valid = 0;  \/\/ \u5df2\u5339\u914d\u4e0a\u7684\u5b57\u7b26\u79cd\u7c7b\u6570\n    \n    while (right &lt; s.size()) {\n        char c = s&#91;right];\n        right++;\n        \n        if (need.count(c)) {\n            window&#91;c]++;\n            if (window&#91;c] == need&#91;c]) valid++;\n        }\n        \n        \/\/ \u5f53\u7a97\u53e3\u6ee1\u8db3\u6761\u4ef6\u65f6\uff0c\u5c1d\u8bd5\u6536\u7f29\u5de6\u8fb9\u754c\n        while (valid == need.size()) {\n            \/\/ \u66f4\u65b0\u7b54\u6848\n            \n            char d = s&#91;left];\n            left++;\n            if (need.count(d)) {\n                if (window&#91;d] == need&#91;d]) valid--;\n                window&#91;d]--;\n            }\n        }\n    }\n    return ans;\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\u4e09\u3001\u5b9a\u957f\u6ed1\u52a8\u7a97\u53e3\uff08\u6d1b\u8c37 + \u725b\u5ba2\uff09<\/h2>\n\n\n\n<p>3.1 \u6ed1\u52a8\u7a97\u53e3\u6700\u5927\u503c\/\u6700\u5c0f\u503c\uff08\u6d1b\u8c37 P1886 \/ \u725b\u5ba2 NC50528\uff09<\/p>\n\n\n\n<p><strong>\u9898\u76ee\u63cf\u8ff0<\/strong>\uff1a\u7ed9\u5b9a\u4e00\u4e2a\u957f\u5ea6\u4e3a n \u7684\u6570\u7ec4\u548c\u4e00\u4e2a\u5927\u5c0f\u4e3a k \u7684\u7a97\u53e3\uff0c\u7a97\u53e3\u4ece\u6700\u5de6\u7aef\u6ed1\u5230\u6700\u53f3\u7aef\uff0c\u6c42\u6bcf\u4e2a\u4f4d\u7f6e\u7a97\u53e3\u5185\u7684\u6700\u5927\u503c\u548c\u6700\u5c0f\u503c<a href=\"https:\/\/www.nowcoder.com\/discuss\/353148520788074496?sourceSSR=users\" target=\"_blank\" rel=\"noreferrer noopener\"><\/a><a href=\"https:\/\/www.luogu.com.cn\/problem\/P1886\" target=\"_blank\" rel=\"noreferrer noopener\"><\/a>\u3002<br><strong>\u8f93\u5165\u793a\u4f8b<\/strong>\uff1a<br>8 3<br>1 3 -1 -3 5 3 6 7<br><strong>\u8f93\u51fa\u793a\u4f8b<\/strong>\uff1a<br>-1 -3 -3 -3 3 3<br>3 3 5 5 6 7<br><strong>\u89e3\u9898\u601d\u8def<\/strong>\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u4f7f\u7528<strong>\u5355\u8c03\u961f\u5217<\/strong>\uff08\u53cc\u7aef\u961f\u5217\uff09\u7ef4\u62a4\u7a97\u53e3\u5185\u7684\u6700\u503c<\/li>\n\n\n\n<li>\u961f\u5217\u5b58\u653e\u4e0b\u6807\uff0c\u4fdd\u6301\u961f\u5217\u4e2d\u5143\u7d20\u5bf9\u5e94\u7684\u503c\u5355\u8c03\u9012\u589e\/\u9012\u51cf<\/li>\n\n\n\n<li>\u961f\u9996\u5143\u7d20\u5373\u4e3a\u5f53\u524d\u7a97\u53e3\u7684\u6700\u503c<\/li>\n<\/ul>\n\n\n\n<p>\u4ee3\u7801\u5982\u4e0b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#include &lt;iostream&gt;\n#include &lt;vector&gt;\nusing namespace std;\n\nconst int N = 1e6 + 10;\nint a&#91;N], q&#91;N];  \/\/ q \u5b58\u50a8\u4e0b\u6807\n\nint main() {\n    int n, k;\n    cin &gt;&gt; n &gt;&gt; k;\n    for (int i = 0; i &lt; n; i++) cin &gt;&gt; a&#91;i];\n    \n    \/\/ \u6c42\u6700\u5c0f\u503c\uff08\u5355\u8c03\u9012\u589e\u961f\u5217\uff09\n    int hh = 0, tt = -1;\n    for (int i = 0; i &lt; n; i++) {\n        \/\/ \u79fb\u9664\u8d85\u51fa\u7a97\u53e3\u8303\u56f4\u7684\u5143\u7d20\n        if (hh &lt;= tt &amp;&amp; i - q&#91;hh] &gt;= k) hh++;\n        \n        \/\/ \u7ef4\u62a4\u5355\u8c03\u6027\uff1a\u961f\u5217\u4e2d\u5143\u7d20\u5bf9\u5e94\u7684\u503c\u5355\u8c03\u9012\u589e\n        while (hh &lt;= tt &amp;&amp; a&#91;q&#91;tt]] &gt;= a&#91;i]) tt--;\n        q&#91;++tt] = i;\n        \n        \/\/ \u7a97\u53e3\u5f62\u6210\u540e\u8f93\u51fa\n        if (i &gt;= k - 1) cout &lt;&lt; a&#91;q&#91;hh]] &lt;&lt; \" \";\n    }\n    cout &lt;&lt; endl;\n    \n    \/\/ \u6c42\u6700\u5927\u503c\uff08\u5355\u8c03\u9012\u51cf\u961f\u5217\uff09\n    hh = 0, tt = -1;\n    for (int i = 0; i &lt; n; i++) {\n        if (hh &lt;= tt &amp;&amp; i - q&#91;hh] &gt;= k) hh++;\n        while (hh &lt;= tt &amp;&amp; a&#91;q&#91;tt]] &lt;= a&#91;i]) tt--;\n        q&#91;++tt] = i;\n        if (i &gt;= k - 1) cout &lt;&lt; a&#91;q&#91;hh]] &lt;&lt; \" \";\n    }\n    \n    return 0;\n}<\/code><\/pre>\n\n\n\n<p><strong>\u590d\u6742\u5ea6\u5206\u6790<\/strong>\uff1a\u6bcf\u4e2a\u5143\u7d20\u6700\u591a\u5165\u961f\u3001\u51fa\u961f\u4e00\u6b21\uff0c\u65f6\u95f4\u590d\u6742\u5ea6 O(n)\uff0c\u7a7a\u95f4\u590d\u6742\u5ea6 O(n)\u3002<br><strong>\u76f8\u5173\u9898\u76ee\u94fe\u63a5<\/strong>\uff1a<br><a href=\"https:\/\/www.luogu.com.cn\/problem\/P1886\">P1886 \u3010\u6a21\u677f\u3011\u5355\u8c03\u961f\u5217 \/ \u6ed1\u52a8\u7a97\u53e3 &#8211; \u6d1b\u8c37<\/a><br><a href=\"https:\/\/ac.nowcoder.com\/acm\/problem\/50528\">\u6ed1\u52a8\u7a97\u53e3<\/a><br><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u56db\u3001\u53d8\u957f\u6ed1\u52a8\u7a97\u53e3<\/h2>\n\n\n\n<p>4.1 \u957f\u5ea6\u6700\u5c0f\u7684\u5b50\u6570\u7ec4\uff08LeetCode 209\uff09<\/p>\n\n\n\n<p><strong>\u9898\u76ee\u63cf\u8ff0<\/strong>\uff1a\u7ed9\u5b9a\u4e00\u4e2a\u542b\u6709 n \u4e2a\u6b63\u6574\u6570\u7684\u6570\u7ec4\u548c\u4e00\u4e2a\u6b63\u6574\u6570 target\uff0c\u627e\u51fa\u548c \u2265 target \u7684\u957f\u5ea6\u6700\u5c0f\u7684\u8fde\u7eed\u5b50\u6570\u7ec4\uff0c\u5e76\u8fd4\u56de\u5176\u957f\u5ea6\u3002\u5982\u679c\u4e0d\u5b58\u5728\uff0c\u8fd4\u56de 0<a href=\"https:\/\/cloud.tencent.com.cn\/developer\/article\/2480728?from=15425&amp;frompage=seopage\" target=\"_blank\" rel=\"noreferrer noopener\"><\/a><a href=\"https:\/\/cloud.tencent.com.cn\/developer\/article\/2486264\" target=\"_blank\" rel=\"noreferrer noopener\"><\/a>\u3002<br><strong>\u8f93\u5165\u793a\u4f8b<\/strong>\uff1a<code>nums = [2,3,1,2,4,3], target = 7<\/code>&nbsp;\u2192 \u8f93\u51fa&nbsp;<code>2<\/code>\uff08\u5b50\u6570\u7ec4&nbsp;<code>[4,3]<\/code>\uff09<br><strong>\u89e3\u9898\u601d\u8def<\/strong>\uff1a<br>\u91cd\u590d\u76f4\u5230 right \u5230\u8fbe\u6570\u7ec4\u672b\u5c3e<br>\u53f3\u6307\u9488 right \u5411\u53f3\u6269\u5c55\u7a97\u53e3\uff0c\u7d2f\u52a0\u548c<br>\u5f53\u7a97\u53e3\u548c \u2265 target \u65f6\uff0c\u8bb0\u5f55\u957f\u5ea6\u5e76\u5c1d\u8bd5\u79fb\u52a8\u5de6\u6307\u9488\u7f29\u5c0f\u7a97\u53e3<\/p>\n\n\n\n<p>\u4ee3\u7801\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>int minSubArrayLen(int target, vector&lt;int&gt;&amp; nums) {\n    int left = 0, sum = 0, ans = INT_MAX;\n    \n    for (int right = 0; right &lt; nums.size(); right++) {\n        sum += nums&#91;right];  \/\/ \u6269\u5927\u7a97\u53e3\n        \n        \/\/ \u5f53\u6ee1\u8db3\u6761\u4ef6\u65f6\uff0c\u5c1d\u8bd5\u7f29\u5c0f\u7a97\u53e3\n        while (sum &gt;= target) {\n            ans = min(ans, right - left + 1);\n            sum -= nums&#91;left];\n            left++;\n        }\n    }\n    \n    return ans == INT_MAX ? 0 : ans;\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\u4e94\u3001\u6ed1\u52a8\u7a97\u53e3 + \u54c8\u5e0c\u8868\uff08\u5b50\u4e32\u5339\u914d\u7c7b\uff09<\/h2>\n\n\n\n<p>5.1 \u6700\u5c0f\u8986\u76d6\u5b50\u4e32\uff08LeetCode 76\uff09<br><strong>\u9898\u76ee\u63cf\u8ff0<\/strong>\uff1a\u7ed9\u5b9a\u5b57\u7b26\u4e32 s \u548c t\uff0c\u8fd4\u56de s \u4e2d\u5305\u542b t \u6240\u6709\u5b57\u7b26\u7684\u6700\u5c0f\u5b50\u4e32<a href=\"https:\/\/cloud.tencent.com.cn\/developer\/article\/2164749?from=15425\" target=\"_blank\" rel=\"noreferrer noopener\"><\/a>\u3002<br><strong>\u8f93\u5165\u793a\u4f8b<\/strong>\uff1a<code>s = \"ADOBECODEBANC\", t = \"ABC\"<\/code>&nbsp;\u2192 \u8f93\u51fa&nbsp;<code>\"BANC\"<\/code><br><strong>\u89e3\u9898\u601d\u8def<\/strong>\uff1a<br>\u7528&nbsp;<code>need<\/code>&nbsp;\u54c8\u5e0c\u8868\u8bb0\u5f55 t \u4e2d\u6bcf\u4e2a\u5b57\u7b26\u7684\u9700\u6c42\u91cf<br>\u7528&nbsp;<code>window<\/code>&nbsp;\u54c8\u5e0c\u8868\u8bb0\u5f55\u5f53\u524d\u7a97\u53e3\u4e2d\u7684\u5b57\u7b26\u6570\u91cf<br><code>valid<\/code>&nbsp;\u8bb0\u5f55\u5df2\u6ee1\u8db3\u9700\u6c42\u7684\u5b57\u7b26\u79cd\u7c7b\u6570<br>\u5f53&nbsp;<code>valid == need.size()<\/code>&nbsp;\u65f6\uff0c\u7a97\u53e3\u6ee1\u8db3\u6761\u4ef6\uff0c\u5c1d\u8bd5\u6536\u7f29<\/p>\n\n\n\n<p>\u4ee3\u7801\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>string minWindow(string s, string t) {\n    unordered_map&lt;char, int&gt; need, window;\n    for (char c : t) need&#91;c]++;\n    \n    int left = 0, right = 0;\n    int valid = 0;\n    int start = 0, min_len = INT_MAX;\n    \n    while (right &lt; s.size()) {\n        char c = s&#91;right];\n        right++;\n        \n        if (need.count(c)) {\n            window&#91;c]++;\n            if (window&#91;c] == need&#91;c]) valid++;\n        }\n        \n        \/\/ \u7a97\u53e3\u6ee1\u8db3\u6761\u4ef6\uff0c\u5c1d\u8bd5\u6536\u7f29\n        while (valid == need.size()) {\n            if (right - left &lt; min_len) {\n                start = left;\n                min_len = right - left;\n            }\n            \n            char d = s&#91;left];\n            left++;\n            \n            if (need.count(d)) {\n                if (window&#91;d] == need&#91;d]) valid--;\n                window&#91;d]--;\n            }\n        }\n    }\n    \n    return min_len == INT_MAX ? \"\" : s.substr(start, min_len);\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\u516d\u3001\u6ed1\u52a8\u7a97\u53e3\u8fdb\u9636\uff1a\u5355\u8c03\u961f\u5217\u4f18\u5316<\/h2>\n\n\n\n<p>\u5f53\u6ed1\u52a8\u7a97\u53e3\u9700\u8981<strong>\u52a8\u6001\u7ef4\u62a4\u7a97\u53e3\u5185\u7684\u6700\u5927\u503c\/\u6700\u5c0f\u503c<\/strong>\u65f6\uff0c\u666e\u901a\u6ed1\u52a8\u7a97\u53e3 O(n\u00b7k) \u7684\u590d\u6742\u5ea6\u4e0d\u591f\u9ad8\u6548\uff0c\u9700\u8981\u7528<strong>\u5355\u8c03\u961f\u5217<\/strong>\u4f18\u5316\u5230 O(n)\u3002<\/p>\n\n\n\n<p><strong>\u5355\u8c03\u961f\u5217\u7684\u6838\u5fc3\u64cd\u4f5c<\/strong>\uff1a<br><strong>\u7ef4\u62a4\u5355\u8c03\u6027<\/strong>\uff1a\u65b0\u5143\u7d20\u5165\u961f\u65f6\uff0c\u4ece\u961f\u5c3e\u5f39\u51fa\u6240\u6709\u6bd4\u5b83\u5c0f\uff08\u7ef4\u62a4\u9012\u51cf\u961f\u5217\uff09\u6216\u6bd4\u5b83\u5927\uff08\u7ef4\u62a4\u9012\u589e\u961f\u5217\uff09\u7684\u5143\u7d20<br><strong>\u7ef4\u62a4\u7a97\u53e3\u8303\u56f4<\/strong>\uff1a\u961f\u9996\u5143\u7d20\u5982\u679c\u8d85\u51fa\u7a97\u53e3\u8303\u56f4\uff0c\u4ece\u961f\u9996\u5f39\u51fa<br><strong>\u83b7\u53d6\u5f53\u524d\u7a97\u53e3\u6700\u503c<\/strong>\uff1a\u961f\u9996\u5143\u7d20\u5373\u4e3a\u7a97\u53e3\u5185\u7684\u6700\u503c<\/p>\n\n\n\n<p><strong>\u6a21\u677f\u4ee3\u7801<\/strong>\uff08\u4ee5\u6700\u5927\u503c\u4e3a\u4f8b\uff09\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>vector&lt;int&gt; maxSlidingWindow(vector&lt;int&gt;&amp; nums, int k) {\n    deque&lt;int&gt; dq;  \/\/ \u5b58\u50a8\u4e0b\u6807\uff0c\u961f\u9996\u5230\u961f\u5c3e\u5355\u8c03\u9012\u51cf\n    vector&lt;int&gt; ans;\n    \n    for (int i = 0; i &lt; nums.size(); i++) {\n        \/\/ 1. \u79fb\u9664\u8d85\u51fa\u7a97\u53e3\u8303\u56f4\u7684\u5143\u7d20\n        if (!dq.empty() &amp;&amp; dq.front() &lt;= i - k) {\n            dq.pop_front();\n        }\n        \n        \/\/ 2. \u7ef4\u62a4\u5355\u8c03\u6027\uff1a\u961f\u5c3e\u5143\u7d20 &lt; \u5f53\u524d\u5143\u7d20\u5219\u5f39\u51fa\n        while (!dq.empty() &amp;&amp; nums&#91;dq.back()] &lt;= nums&#91;i]) {\n            dq.pop_back();\n        }\n        dq.push_back(i);\n        \n        \/\/ 3. \u7a97\u53e3\u5f62\u6210\u540e\uff0c\u8bb0\u5f55\u7ed3\u679c\n        if (i &gt;= k - 1) {\n            ans.push_back(nums&#91;dq.front()]);\n        }\n    }\n    return ans;\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\u4e03\u3001\u7ecf\u5178\u4f8b\u9898<\/h2>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u4e00\u3001\u4ec0\u4e48\u662f\u6ed1\u52a8\u7a97\u53e3\uff1f \u6ed1\u52a8\u7a97\u53e3\u662f\u4e00\u79cd\u4f7f\u7528\u53cc\u6307\u9488\u7ef4\u62a4\u6570\u7ec4\/\u5b57\u7b26\u4e32\u533a\u95f4\u7684\u7b97\u6cd5\u6280\u5de7\u3002\u5b83\u901a\u8fc7\u52a8\u6001\u8c03\u6574\u7a97\u53e3\u7684\u5de6\u53f3\u8fb9\u754c\uff0c\u5728 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":156,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1,15,12],"tags":[],"class_list":["post-409","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-article","category-algorithm-template","category-programming-algorithm-road"],"_links":{"self":[{"href":"https:\/\/jiangqvweihuan.cn\/index.php\/wp-json\/wp\/v2\/posts\/409","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jiangqvweihuan.cn\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jiangqvweihuan.cn\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jiangqvweihuan.cn\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jiangqvweihuan.cn\/index.php\/wp-json\/wp\/v2\/comments?post=409"}],"version-history":[{"count":3,"href":"https:\/\/jiangqvweihuan.cn\/index.php\/wp-json\/wp\/v2\/posts\/409\/revisions"}],"predecessor-version":[{"id":426,"href":"https:\/\/jiangqvweihuan.cn\/index.php\/wp-json\/wp\/v2\/posts\/409\/revisions\/426"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/jiangqvweihuan.cn\/index.php\/wp-json\/wp\/v2\/media\/156"}],"wp:attachment":[{"href":"https:\/\/jiangqvweihuan.cn\/index.php\/wp-json\/wp\/v2\/media?parent=409"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jiangqvweihuan.cn\/index.php\/wp-json\/wp\/v2\/categories?post=409"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jiangqvweihuan.cn\/index.php\/wp-json\/wp\/v2\/tags?post=409"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}