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

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>
            久久国产精品色婷婷| 亚洲日本在线观看| 久久久亚洲综合| 久久久久久网址| 美女91精品| 欧美精品日韩精品| 欧美日韩国产成人在线91| 欧美日韩一区二区三区高清| 欧美日韩高清区| 国产精品高潮呻吟久久| 国产午夜精品理论片a级探花 | 欧美了一区在线观看| 欧美刺激性大交免费视频 | 亚洲精品在线一区二区| 91久久国产精品91久久性色| 亚洲国产日韩欧美| 亚洲小视频在线观看| 亚洲专区在线视频| 久久九九国产| 最新国产精品拍自在线播放| 亚洲日本理论电影| 亚洲自拍偷拍视频| 免费成人高清| 国产伦精品一区二区三区高清版| 一区视频在线播放| 一区二区三区四区精品| 久久久国产精品亚洲一区| 亚洲国产三级网| 欧美一级欧美一级在线播放| 欧美成人高清| 国产一区二区视频在线观看| 亚洲视频一区二区| 美女视频黄a大片欧美| 一二美女精品欧洲| 欧美大片国产精品| 国际精品欧美精品| 亚洲一级免费视频| 亚洲国产精品久久91精品| 久久爱91午夜羞羞| 国产精品第2页| 国产一区二区三区四区在线观看| 一区二区三区视频观看| 欧美激情一二区| 欧美永久精品| 国产精品女主播| 亚洲图片在线| 亚洲伦理自拍| 欧美刺激午夜性久久久久久久| 国产精品视频一二三| 雨宫琴音一区二区在线| 久久激情网站| 亚洲婷婷国产精品电影人久久| 欧美肥婆在线| 91久久夜色精品国产九色| 久久综合一区二区| 性欧美8khd高清极品| 国产精品一区二区三区观看| av不卡在线观看| 亚洲日韩成人| 欧美日韩国产经典色站一区二区三区| 亚洲国产欧美不卡在线观看| 免费在线观看成人av| 久久视频在线视频| 亚洲夫妻自拍| 亚洲电影网站| 欧美区日韩区| 一区二区三区不卡视频在线观看| 亚洲国产精品久久久久婷婷老年| 欧美国产精品va在线观看| 亚洲免费播放| 日韩视频一区二区在线观看| 欧美日韩精品免费观看视频完整 | 亚洲精品日本| 免费观看亚洲视频大全| 久久久精品国产免费观看同学| 国产婷婷精品| 久久久久久网址| 蜜桃av综合| 亚洲免费高清| 一区二区三区.www| 国产在线高清精品| 欧美激情五月| 国产精品成人v| 久久久91精品| 欧美精品在线一区二区三区| 亚洲一级在线观看| 欧美综合激情网| 亚洲巨乳在线| 亚洲欧洲av一区二区| 一区二区三区在线免费视频| 亚洲第一在线综合网站| 国产精品v日韩精品| 久久综合九色| 欧美日本在线观看| 看欧美日韩国产| 欧美精品入口| 久久久久久久久久久久久女国产乱| 久久一区欧美| 性欧美1819sex性高清| 久久亚洲精品视频| 亚洲欧美精品suv| 你懂的一区二区| 小嫩嫩精品导航| 浪潮色综合久久天堂| 亚洲欧美日韩国产综合| 毛片av中文字幕一区二区| 亚洲男人的天堂在线| 久久一区欧美| 久久久噜噜噜久久人人看| 欧美欧美天天天天操| 六月婷婷久久| 国产精品你懂的| 日韩一级在线观看| 亚洲精品一区在线观看| 久久久久88色偷偷免费| 亚洲欧美另类在线观看| 欧美激情精品| 欧美mv日韩mv国产网站app| 国产精品素人视频| 99re66热这里只有精品3直播| 在线播放豆国产99亚洲| 午夜日韩福利| 欧美伊人精品成人久久综合97| 欧美日韩另类视频| 欧美国产精品一区| 亚洲国产精品一区二区尤物区| 欧美在线看片| 亚洲手机视频| 欧美激情视频网站| 亚洲国产精品第一区二区三区 | 欧美成人性网| 牛牛国产精品| 欧美成在线观看| 国产欧美在线看| 亚洲专区在线视频| 午夜激情综合网| 欧美日韩亚洲一区二区三区在线观看 | 亚洲人成艺术| 免费观看欧美在线视频的网站| 久久精品一区中文字幕| 国产欧美一区二区三区另类精品| 一区二区欧美视频| 亚洲影音先锋| 国产精品色午夜在线观看| 亚洲视频网在线直播| 羞羞视频在线观看欧美| 国产一区二区精品丝袜| 久久亚洲国产成人| 欧美国产亚洲视频| 99视频一区二区三区| 国产精品第一区| 欧美伊人久久久久久久久影院| 久久精品av麻豆的观看方式 | 国产精品高潮呻吟久久av黑人| 99天天综合性| 欧美一级在线视频| 黄色成人精品网站| 欧美波霸影院| 一区二区三区视频在线| 欧美在线播放| 亚洲高清不卡在线观看| 欧美日韩精品综合在线| 午夜精品影院| 亚洲国产精品成人va在线观看| 在线一区二区三区四区五区| 国产精品看片资源| 久久gogo国模啪啪人体图| 欧美激情一区二区三级高清视频| 一本色道久久综合亚洲精品按摩 | 欧美激情精品久久久久久变态| 一区二区三区国产盗摄| 国产欧美日韩亚洲精品| 欧美gay视频| 在线视频日韩精品| 久久只有精品| 亚洲一区二区精品在线观看| 国产一区在线看| 欧美激情一区二区久久久| 一区二区三区三区在线| 欧美高清在线视频观看不卡| 亚洲欧美日韩综合国产aⅴ| 在线成人av| 国产精品久久久久久久久久三级| 久久精品视频在线免费观看| 99精品久久| 欧美成人在线影院| 久久国产精品一区二区三区四区| 亚洲乱码视频| 黑人巨大精品欧美黑白配亚洲| 欧美日韩国产色站一区二区三区| 久久国产主播精品| 亚洲一区精品在线| 亚洲人成在线影院| 免费日韩av电影| 欧美一级午夜免费电影| 欧美精品一区二区蜜臀亚洲| 国产精品xxxxx| 欧美成人午夜剧场免费观看| 亚洲视频高清| 亚洲乱码国产乱码精品精天堂|