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

The Fourth Dimension Space

枯葉北風寒,忽然年以殘,念往昔,語默心酸。二十光陰無一物,韶光賤,寐難安; 不畏形影單,道途阻且慢,哪曲折,如渡飛湍。斬浪劈波酬壯志,同把酒,共言歡! -如夢令

最小堆類

#include<iostream>
#include
<cmath>
#include
<algorithm>
using namespace std;


template
<class T>
class MinHeap
{
private:
    T 
*heap;
    
int CurrentSize;
    
int MaxSize;
    
void FilterDown(const int start,const int end);
    
void FilterUp(int start);
public:
    MinHeap(
int n);
    MinHeap();
    
~MinHeap(){delete []heap;}
    
bool Insert(const T &x);
    T RemoveMin();
    T GetMin();
    
bool IsEmpty() const{return CurrentSize==0;}
    
bool IsFull() const{return CurrentSize==MaxSize;}
    
void Clear(){CurrentSize=0;}
}
;


template
<class T>
MinHeap
<T>::MinHeap()
{

    MaxSize
=1000;
    heap
=new T[MaxSize];
    CurrentSize
=0;

}

template
<class T>
MinHeap
<T>::MinHeap(int n)
{

    MaxSize
=n;
    heap
=new T[MaxSize];
    CurrentSize
=0;
}


template
<class T>
void MinHeap<T>::FilterDown(const int start,const int end)
{

    
int i=start,j=2*i+1;
    T temp
=heap[i];
    
while(j<=end)
    
{

        
if(j<end&&heap[j]>heap[j+1])
            j
++;
        
if(temp<=heap[j])
            
break;
        
else 
        
{

            heap[i]
=heap[j];i=j;j=2*j+1;
        }

    }

    heap[i]
=temp;
}



template
<class T>
bool MinHeap<T>::Insert(const T &x)
{

    
if(CurrentSize==MaxSize)
        
return false;
    heap[CurrentSize]
=x;
    FilterUp(CurrentSize);
    CurrentSize
++;
    
return true;
}



template
<class T>
void MinHeap<T>::FilterUp(int start)
{

    
int j=start,i=(j-1)/2;
    T temp
=heap[j];
    
while(j>0)
    
{

        
if(heap[i]<=temp)break;
        
else
            heap[j]
=heap[i];j=i;i=(i-1)/2;

    }

    heap[j]
=temp;
}




template
<class T>
T MinHeap
<T>::RemoveMin( )
{
    T x
=heap[0];
    heap[
0]=heap[CurrentSize-1];
    CurrentSize
--;
    FilterDown(
0,CurrentSize-1);
    
return x;
}


template
<class T>
T MinHeap
<T>::GetMin()
{

    
return heap[0];
}



int main ()
{
    MinHeap
<int> test(8);
    
int k;
    
bool tem;
    
for(k=1;k<=10;k++)
    
{

        tem
=test.Insert(10-k);
    }

    tem
=test.IsEmpty();
    tem
=test.IsFull();
    
for(k=1;k<=5;k++)
        test.RemoveMin();
    
return 0;

}


一個自實現的優先隊列 最小堆。


#include<iostream>
#include
<cmath>
#include
<algorithm>
using namespace std;


template
<class T>
class MinHeap
{
public:
    T 
*heap;
    
int CurrentSize;
    
int MaxSize;
    
void FilterDown(const int start,const int end);
    
void FilterUp(int start);
public:
    MinHeap(
int n);
    
~MinHeap(){delete []heap;}
    
bool Insert(const T &x);
    T RemoveMin();
    T GetMin();
}
;

template
<class T>
MinHeap
<T>::MinHeap(int n)
{

    MaxSize
=n;
    heap
=new T[MaxSize];
    CurrentSize
=0;
}


template
<class T>
void MinHeap<T>::FilterDown(const int start,const int end)
{

    
int i=start,j=2*i+1;
    T temp
=heap[i];
    
while(j<=end)
    
{

        
if(j<end&&heap[j+1]<heap[j])
            j
++;
        
if(temp<heap[j])
            
break;
        
else 
            heap[i]
=heap[j];i=j;j=2*j+1;
    }

    heap[i]
=temp;
}



template
<class T>
bool MinHeap<T>::Insert(const T &x)
{

    
if(CurrentSize==MaxSize)
        
return false;
    heap[CurrentSize]
=x;
    FilterUp(CurrentSize);
    CurrentSize
++;
    
return true;
}



template
<class T>
void MinHeap<T>::FilterUp(int start)
{

    
int j=start,i=(j-1)/2;
    T temp
=heap[j];
    
while(j>0)
    
{
        
if(heap[i]<temp) break;
        
else heap[j]=heap[i];j=i;i=(i-1)>>1;
    }

    heap[j]
=temp;
}

template
<class T>
T MinHeap
<T>::RemoveMin( )
{
    T x
=heap[0];
    heap[
0]=heap[CurrentSize-1];
    CurrentSize
--;
    FilterDown(
0,CurrentSize-1);
    
return x;
}


template
<class T>
T MinHeap
<T>::GetMin()
{
    
return heap[0];
}

稍微改良一下啊 只需要重載<符號即可

posted on 2009-05-08 16:57 abilitytao 閱讀(424) 評論(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>
            亚洲黄色片网站| 欧美成人免费在线| 久久夜色精品国产欧美乱| 午夜视频久久久久久| 亚洲欧美一区二区在线观看| 亚洲一本大道在线| 午夜精品久久久久久久99黑人| 亚洲欧美在线一区| 欧美影片第一页| 老司机精品视频一区二区三区| 美女精品在线| 亚洲国产婷婷| 亚洲美女精品成人在线视频| 中文久久精品| 久久蜜桃资源一区二区老牛| 欧美国产激情| 国产精品视频xxxx| 亚洲成人在线观看视频| 亚洲精选视频免费看| 亚洲免费视频中文字幕| 免费日韩一区二区| 一区二区三区高清在线观看| 欧美在线影院在线视频| 欧美成人午夜激情视频| 国产精品午夜春色av| 亚洲国产精品va在看黑人| 亚洲无人区一区| 免费观看日韩av| 亚洲欧美伊人| 欧美日韩精品是欧美日韩精品| 国产日韩欧美视频| 在线亚洲国产精品网站| 免费亚洲一区| 午夜精品久久久久| 欧美日韩日韩| 亚洲日本aⅴ片在线观看香蕉| 欧美亚洲专区| 夜夜嗨av色综合久久久综合网| 久久伊人精品天天| 国产欧美亚洲日本| 亚洲一区二区三区在线播放| 欧美国内亚洲| 久久久99爱| 国产日韩欧美精品| 午夜久久久久| 一区二区国产精品| 欧美不卡视频一区发布| 精品电影一区| 久久免费黄色| 久久高清国产| 国产一区二区高清| 久久精品盗摄| 欧美在线电影| 极品尤物久久久av免费看| 欧美在线综合视频| 性欧美video另类hd性玩具| 欧美日韩国产另类不卡| 亚洲免费久久| 亚洲精品在线视频观看| 亚洲在线中文字幕| 99国产一区| 欧美视频一区二区三区在线观看 | 麻豆精品视频| 国内精品久久国产| 久久视频这里只有精品| 性欧美8khd高清极品| 国产乱码精品一区二区三区av | 亚洲视频免费在线| 99综合电影在线视频| 国产精品成人在线| 香蕉乱码成人久久天堂爱免费 | 性做久久久久久久久| 国产亚洲观看| 免费欧美在线| 欧美精品免费播放| 亚洲自拍都市欧美小说| 午夜精品久久久久久久| 激情综合网激情| 亚洲欧洲免费视频| 欧美性开放视频| 久久久久久久久一区二区| 久久久91精品| 一区二区三区|亚洲午夜| 亚洲一区二区综合| 伊人成年综合电影网| 亚洲精品国产欧美| 国产欧美不卡| 久热re这里精品视频在线6| 久久午夜羞羞影院免费观看| 男同欧美伦乱| 欧美激情第六页| 一本色道久久加勒比精品 | 国内久久精品视频| 欧美成人在线免费视频| 欧美日韩国产片| 久久精品视频在线播放| 欧美成人dvd在线视频| 亚洲在线一区二区| 久热精品视频在线| 亚洲私人影院| 久久蜜桃av一区精品变态类天堂| 日韩视频免费观看高清完整版| 亚洲主播在线观看| 亚洲黄色免费| 午夜日韩激情| 国产精品99久久久久久久久 | 久久国产精品久久久久久久久久| 亚洲激情第一页| 亚洲一区二区在线观看视频| 亚洲国产精品小视频| 亚洲一区二区三区高清不卡| 亚洲精品久久7777| 久久精品主播| 免费成人黄色av| 欧美亚洲免费在线| 欧美日韩精品在线视频| 欧美二区在线播放| 国产一区二区三区av电影| 中文国产亚洲喷潮| 一本色道久久99精品综合| 久久一区免费| 久久综合久色欧美综合狠狠| 国产精品高清网站| 亚洲国产视频直播| 亚洲欧洲精品一区二区三区不卡 | 欧美国产日韩一区二区在线观看 | 亚洲欧美日韩一区二区在线| 欧美刺激性大交免费视频| 狼狼综合久久久久综合网| 国产深夜精品福利| 午夜精品久久99蜜桃的功能介绍| 亚洲在线播放| 国产精品久久99| 亚洲一区二区免费看| 亚洲欧美国产精品专区久久| 欧美日韩福利视频| 999亚洲国产精| 中文在线一区| 欧美三级网页| 一本久道久久综合中文字幕| 一本色道久久加勒比88综合| 欧美大学生性色视频| 亚洲第一在线| 亚洲国产精品久久久久秋霞影院| 久久久www成人免费毛片麻豆| 久久久久久九九九九| 国产日韩一区二区| 性18欧美另类| 蜜臀va亚洲va欧美va天堂| 在线成人激情| 久久久久成人网| 欧美激情国产日韩精品一区18| 亚洲国内欧美| 欧美色视频在线| 欧美一区二区三区精品电影| 久久久免费av| 亚洲日本在线视频观看| 欧美精品久久久久久久免费观看| 亚洲毛片av在线| 香蕉久久夜色精品国产使用方法| 国产日韩亚洲欧美| 免费欧美日韩| 一区二区激情视频| 久久免费国产精品1| 亚洲日本久久| 国产精品爽黄69| 老司机精品导航| 一区二区欧美亚洲| 久久精品国产清自在天天线| 亚洲国产成人久久综合| 欧美日韩在线播放| 久久精品欧洲| 一片黄亚洲嫩模| 欧美a级理论片| 亚洲欧美国产精品桃花| 亚洲国产91色在线| 国产精品青草久久久久福利99| 久久国产精品毛片| 99精品国产一区二区青青牛奶| 久久狠狠久久综合桃花| 亚洲人体影院| 日韩视频一区二区三区在线播放免费观看| 亚洲欧美日韩国产中文在线| 国产丝袜美腿一区二区三区| 亚洲人体影院| 麻豆精品在线播放| 午夜视频在线观看一区二区| 91久久精品www人人做人人爽| 国产精品久久午夜| 欧美成人免费小视频| 欧美在线免费观看| 99re8这里有精品热视频免费 | 亚洲理论电影网| 国产精品永久免费| 欧美日韩成人激情| 久久人人爽人人| 欧美一区二区在线免费观看| 亚洲人在线视频| 美女精品在线观看| 久久久青草婷婷精品综合日韩|