青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

FireEmissary

  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
  14 隨筆 :: 0 文章 :: 20 評論 :: 0 Trackbacks

Given an array nums, there is a sliding window of size k which is moving from the very left of the array to the very right. You can only see the k numbers in the window. Each time the sliding window moves right by one position.

For example,
Given nums = [1,3,-1,-3,5,3,6,7], and k = 3.

Window position                  Max 
--------------- -----
[1 3 -1] -3 5 3 6 7 3
1 [3 -1 -3] 5 3 6 7 3
1 3 [-1 -3 5] 3 6 7 5
1 3 -1 [-3 5 3] 6 7 5
1 3 -1 -3 [5 3 6] 7 6
1 3 -1 -3 5 [3 6 7] 7

Therefore, return the max sliding window as [3,3,5,5,6,7].

Note: 
You may assume k is always valid, 1 ≤ k ≤ input array's size.

Follow up:
Could you solve it in linear time?

Hint:

  1. How about using a data structure such as deque (double-ended queue)?
  2. The queue size need not be the same as the window’s size.
  3. Remove redundant elements and the queue should store only elements that need to be considered.


大意是用雙向隊列可以n的線性時間.網友的解法意思是前端移出了滑動窗口的元素要移除

然后新指向的元素和隊列尾部元素比較,尾部小的元素也要移除.這樣保持隊列總是在滑動窗口里從大到小排好.

個人覺得當k比較大而輸入元素基本隨機時不可能是n復雜度.而應該是(k/2)*n左右


所以我的解法干脆用兩個指針:最大值,第二大值來維護.實際運行還比雙端隊列快一點點.(92ms 擊敗90%)


vector<int> maxSlidingWindow(vector<int>& nums, int k) {
         
if(nums.size()<2)return nums;
        size_t n
=nums.size(), maxv=0,secondv=~0;
        vector
<int> out;
         
//secondv維持第二大的元素.如果maxv在窗口邊界,secondv就是魔術~0代表不存在第二小元素.
         for(size_t i=1;i<k;++i)
            {
                
if(nums[i]>nums[maxv]){
                    maxv
=i;
                    secondv
=~0;
                }
else  if(secondv==~0||nums[i]>nums[secondv]){
                    secondv
=i;
                }
            }
         
out.push_back(nums[maxv]);
         
for(size_t i=k;i<n;++i)
         {
             
if(maxv<=i-k)
                 {
                     
                     
if(secondv==~0){
                         maxv
=i;
                     }
else{
                        maxv
=secondv;
                        secondv
=secondv+1;
                        
//maxv移出滑動窗口時,如果secondv存在,顯然要更新它找出新的第二大元素.
                        for(size_t j=secondv+1;j<i;++j)
                            
if(nums[j]>nums[secondv])secondv=j;
                     }
                 }
             
if(nums[i]>nums[maxv]){
                 maxv
=i;
                  secondv
=~0;
             }
else  if(secondv==~0||nums[i]>nums[secondv]){
                    secondv
=i;
                }
                
out.push_back(nums[maxv]);
                
         }
        
return out;
    }



posted on 2016-07-24 14:54 FireEmissary 閱讀(1002) 評論(0)  編輯 收藏 引用

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            另类酷文…触手系列精品集v1小说| 久久只精品国产| 一本色道久久加勒比88综合| 欧美日韩国产区一| 在线午夜精品自拍| 亚洲一区中文| 国产综合久久久久久鬼色| 久久人人97超碰精品888| 久久青青草综合| 夜夜嗨av一区二区三区四季av| 亚洲激精日韩激精欧美精品| 欧美极品在线视频| 亚洲欧美日韩成人| 欧美一区二区免费视频| 亚洲电影欧美电影有声小说| 亚洲国产精品久久久久婷婷884| 欧美精品福利| 久久精品国产亚洲高清剧情介绍 | 亚洲久久视频| 一区二区三区你懂的| 国产在线不卡视频| 亚洲黄色片网站| 国产欧美日韩另类一区| 欧美电影免费观看高清完整版| 欧美日韩精品免费在线观看视频| 亚洲欧美一区二区三区久久 | 亚洲综合国产| 亚洲国产精品女人久久久| 一区二区三区日韩欧美| 伊人一区二区三区久久精品| 99精品国产在热久久婷婷| 好男人免费精品视频| 99在线|亚洲一区二区| 一区一区视频| 一区二区三区色| 亚洲激情在线| 欧美一级大片在线观看| 一区二区三区视频在线| 久久天天躁狠狠躁夜夜av| 亚洲一区精品在线| 欧美精品免费看| 蜜桃av综合| 国产一级久久| 亚洲一区二区欧美| 一本色道久久99精品综合 | 亚洲精品视频免费| 在线观看视频亚洲| 性欧美激情精品| 亚洲专区一区| 欧美日韩一区二区三| 欧美大秀在线观看| 国模精品娜娜一二三区| 亚洲一区在线观看免费观看电影高清| 亚洲欧洲日本专区| 免费的成人av| 免费成人av在线看| 精品96久久久久久中文字幕无| 亚洲一区制服诱惑| 亚洲男女自偷自拍图片另类| 欧美久久一区| 亚洲精品一区二区网址| 亚洲精选中文字幕| 欧美精品九九| 亚洲精品一区在线观看| 亚洲精品少妇30p| 欧美大片在线看| 亚洲国产精品一区二区三区| 亚洲黄色天堂| 欧美成人精品| 99在线|亚洲一区二区| 亚洲一二三区在线| 国产精品porn| 午夜精品一区二区三区电影天堂 | 欧美一区二区三区四区高清| 国产精品美女一区二区在线观看| 亚洲免费久久| 性xx色xx综合久久久xx| 国产一区二区视频在线观看 | 亚洲第一黄色网| 日韩视频三区| 欧美性大战xxxxx久久久| 亚洲男女自偷自拍图片另类| 久久精品一区四区| 亚洲国产精品一区二区尤物区| 蜜臀av一级做a爰片久久| 亚洲国产精品久久久久秋霞影院 | 亚洲美女区一区| 亚洲一区二区三区午夜| 国产女主播一区二区| 久久精品国产一区二区电影| 欧美国产日韩精品| 亚洲综合第一| 又紧又大又爽精品一区二区| 欧美日韩999| 欧美亚洲一级| 亚洲人成免费| 久久国内精品视频| 亚洲精品视频一区| 国产精品一区二区视频| 久久全国免费视频| 国产精品99久久久久久有的能看| 欧美亚洲一区在线| 亚洲三级性片| 国产一区深夜福利| 欧美另类专区| 久久天天狠狠| 亚洲欧美日韩国产中文| 亚洲国产另类久久久精品极度| 亚洲一区精品在线| 最新成人av在线| 国产一区二区三区自拍| 欧美伦理在线观看| 久久久久久久久蜜桃| 亚洲一区二区在线免费观看| 免费看的黄色欧美网站| 性欧美暴力猛交另类hd| 日韩视频国产视频| 伊人久久亚洲美女图片| 国产精品久久久久久影院8一贰佰 国产精品久久久久久影视 | 欧美在线一级视频| 一区二区三区视频在线观看 | 国产精品福利在线| 欧美91精品| 久久久久久夜| 久久国产欧美| 欧美亚洲专区| 亚洲欧美综合| 亚洲一区二区三区免费观看| 亚洲第一福利社区| 女人天堂亚洲aⅴ在线观看| 久久久激情视频| 欧美综合国产| 欧美一区二区三区免费视频 | 韩国av一区二区| 国产精品一区二区黑丝| 国产精品成人观看视频国产奇米| 你懂的国产精品永久在线| 久久免费视频观看| 欧美专区18| 久久福利影视| 久久免费黄色| 你懂的网址国产 欧美| 久久影院午夜片一区| 久久精品免费电影| 久久人人精品| 女人香蕉久久**毛片精品| 老司机精品导航| 美女国产一区| 欧美不卡激情三级在线观看| 老色批av在线精品| 欧美成年人视频网站欧美| 欧美福利网址| 欧美日韩专区| 国产精品婷婷| 黄色一区二区三区| 亚洲福利在线观看| 9l国产精品久久久久麻豆| 亚洲一区久久久| 欧美一区二区三区在线观看| 久久精品夜色噜噜亚洲a∨ | 一区二区久久| 亚洲欧美日韩另类| 久久精品视频一| 欧美激情亚洲一区| 99精品久久久| 久久国产精品99国产| 美女主播精品视频一二三四| 欧美日本国产视频| 国产精品国产自产拍高清av| 国产欧亚日韩视频| 亚洲人体1000| 欧美一级播放| 亚洲国产经典视频| 亚洲午夜在线| 美女脱光内衣内裤视频久久网站| 欧美日韩精品三区| 国产在线拍偷自揄拍精品| 亚洲裸体视频| 久久久久网站| 日韩午夜视频在线观看| 久久久久久成人| 欧美视频在线观看视频极品| 狠狠色噜噜狠狠狠狠色吗综合| 亚洲乱码国产乱码精品精可以看 | 亚洲国产欧美不卡在线观看| 亚洲图片在线观看| 欧美成人性生活| 亚洲视频视频在线| 美国十次了思思久久精品导航| 欧美性淫爽ww久久久久无| 曰韩精品一区二区| 午夜精品亚洲一区二区三区嫩草| 欧美国产精品v| 久久不射中文字幕| 欧美天堂亚洲电影院在线播放| 伊人激情综合| 久久久精彩视频| 一区二区三区高清在线观看| 麻豆国产精品一区二区三区 | 国产亚洲福利一区|