亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? maxheap.h

?? 常見的排序算法
?? H
字號:
// MaxHeap.h: interface for the MaxHeap class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_MaxHeap_H__6BC12E9A_B926_47C2_8ACF_AA4004A0546F__INCLUDED_)
#define AFX_MaxHeap_H__6BC12E9A_B926_47C2_8ACF_AA4004A0546F__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

template <class T>
class MaxHeap  
{
private:
	T* heapArray;							//存放堆數據的數組
	int CurrentSize;						//當前堆中元素數目
	int MaxSize;							//堆所能容納的最大元素數目
public:
	MaxHeap(T* array,int num,int max);
	virtual ~MaxHeap(){};					//析構函數
	void BuildHeap();
	bool isLeaf(int pos) const;				//如果是葉結點,返回TRUE
	int leftchild(int pos) const;			//返回左孩子位置
	int rightchild(int pos) const;			//返回右孩子位置
	int parent(int pos) const;				//返回父結點位置
	bool Remove(int pos, T& node);			//刪除給定下標的元素
	void SiftDown(int left);				//篩選法函數,參數left表示開始處理的數組下標
	void SiftUp(int position);			 	//從position向上開始調整,使序列成為堆
	bool Insert(const T& newNode);			//向堆中插入新元素newNode
	void MoveMax();							//從堆頂移動最大值到尾部
	T& RemoveMax();							//從堆頂刪除最大值
};

template<class T>
MaxHeap<T>::MaxHeap(T* array,int num,int max)
{
	heapArray=array;
	CurrentSize=num;
	MaxSize=max;
	BuildHeap();
}

template<class T>
void MaxHeap<T>::BuildHeap()
{
	for (int i=CurrentSize/2-1; i>=0; i--) 
		SiftDown(i); 
}

template<class T>
bool MaxHeap<T>::isLeaf(int pos) const
{
		return (pos>=CurrentSize/2)&&(pos<CurrentSize);
}

template<class T>
int MaxHeap<T>::leftchild(int pos) const
{
	return 2*pos+1;						//返回左孩子位置
}

template<class T>
int MaxHeap<T>::rightchild(int pos) const
{
	return 2*pos+2;						//返回右孩子位置
}

template<class T>
int MaxHeap<T>::parent(int pos) const	//返回父節點位置
{
	return (pos-1)/2;
}

template<class T>
void MaxHeap<T>::SiftDown(int left)
{
	//準備
	int i=left;							//標識父結點
	int j=2*i+1;						//標識關鍵值較小的子結點		
	T	temp=heapArray[i];				//保存父結點
	//過篩
	while(j<CurrentSize)
	{
		if((j<CurrentSize)&&(heapArray[j]<heapArray[j+1]))
			j++;						//j指向右子結點
		if(temp<heapArray[j])
		{
			heapArray[i]=heapArray[j];
			i=j;
			j=2*j+1;					//向下繼續
		}
		else break;
	}
	heapArray[i]=temp;
}

template<class T>
void MaxHeap<T>::SiftUp(int position) 
{//從position向上開始調整,使序列成為堆
	int temppos=position;
	T temp=heapArray[temppos];
	int parentpos=0;
	if(temppos>0)
		parentpos=parent(temppos);
	while((temppos>0)&&(heapArray[parentpos]<temp))
	{
		heapArray[temppos]=heapArray[parentpos];
		temppos=parentpos;
		parentpos=parent(temppos);
	}
	heapArray[temppos]=temp;
}

template<class T>
bool MaxHeap<T>::Insert(const T& newNode)
{//向堆中插入一個結點
	if(CurrentSize==MaxSize)				//堆空間已經滿
		return FALSE;
	heapArray[CurrentSize]=newNode;
	SiftUp(CurrentSize);					//向上調整
	CurrentSize++;
}

template<class T>
T& MaxHeap<T>::RemoveMax()
{
	if(CurrentSize==0)
	{
		AfxMessageBox("Can't Delete");

	}
	else
	{
		T temp=heapArray[0];					//取堆頂元素
		heapArray[0]=heapArray[CurrentSize-1];	//堆末元素上升至堆頂
		CurrentSize--;
		SiftDown(0);							//從堆頂開始篩選
		return temp;
	}
}

template<class T>
void MaxHeap<T>::MoveMax()
{
	if(CurrentSize==0)
	{
		//堆為空
		return;
	}
	else
	{
		T temp=heapArray[0];					//取堆頂元素
		heapArray[0]=heapArray[CurrentSize-1];	//堆末元素上升至堆頂
		CurrentSize--;
		SiftDown(0);							//從堆頂開始篩選
		heapArray[CurrentSize]=temp;
	}
	return;
}

template<class T>
bool MaxHeap<T>::Remove(int pos, T& node)
{// 刪除給定下標的元素
	if((pos<0)||(pos>CurrentSize))
		return false;
	heapArray[pos]=heapArray[--CurrentSize];	//指定元素置于最后
	SiftUp(pos);								//上升篩
	SiftDown(0);								//向下篩	
	node=heapArray[CurrentSize];
	return true;
}

#endif // !defined(AFX_MaxHeap_H__6BC12E9A_B926_47C2_8ACF_AA4004A0546F__INCLUDED_)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美经典一区二区| 久久影院视频免费| 99国内精品久久| 成人国产免费视频| 成人免费不卡视频| 不卡的av在线播放| 成人精品免费视频| 色综合久久久久网| 在线视频你懂得一区二区三区| 99精品视频在线播放观看| 91在线观看视频| 欧美在线一二三| 91精品婷婷国产综合久久性色 | 日本va欧美va精品发布| 五月婷婷色综合| 久久99最新地址| 国产成人精品免费网站| 风间由美一区二区av101| 99国产精品一区| 欧美性色综合网| 欧美一区二区三区的| 精品国产髙清在线看国产毛片| 久久亚洲精精品中文字幕早川悠里| 欧美激情一区二区三区在线| 亚洲欧美激情视频在线观看一区二区三区 | 午夜精品成人在线视频| 久久er精品视频| 北条麻妃国产九九精品视频| 99久久精品情趣| 日韩亚洲欧美在线| 亚洲欧美在线另类| 奇米综合一区二区三区精品视频| 高清不卡一区二区在线| 色中色一区二区| 欧美tickling挠脚心丨vk| 亚洲色大成网站www久久九九| 日日骚欧美日韩| av不卡在线播放| 日韩美女主播在线视频一区二区三区 | 精品在线亚洲视频| 99久久精品国产观看| 欧美一区二区三区啪啪| 国产精品成人网| 久草在线在线精品观看| 99精品一区二区三区| 精品播放一区二区| 婷婷激情综合网| 成人av综合在线| xfplay精品久久| 亚洲国产日日夜夜| thepron国产精品| 日韩美女主播在线视频一区二区三区| 亚洲精品v日韩精品| 成人性生交大片免费看在线播放| 日韩女优电影在线观看| 亚洲国产日韩a在线播放| av在线播放成人| 国产视频一区二区三区在线观看| 青青草97国产精品免费观看无弹窗版| 91在线免费播放| 中文字幕第一区第二区| 国产在线播放一区二区三区| 欧美老肥妇做.爰bbww视频| 亚洲色图欧洲色图| 不卡一卡二卡三乱码免费网站| 日韩欧美精品在线视频| 日韩在线一区二区| 91麻豆精品91久久久久同性| 亚洲r级在线视频| 欧美亚洲一区二区在线观看| 亚洲欧美日韩人成在线播放| 成人免费的视频| 国产精品久久久久久妇女6080| 国产精品中文字幕欧美| 久久久一区二区三区| 国产在线视视频有精品| 26uuu色噜噜精品一区| 国模少妇一区二区三区| 欧美tickling挠脚心丨vk| 久久99久久精品| 久久人人超碰精品| 岛国精品在线观看| 一色屋精品亚洲香蕉网站| 97久久超碰精品国产| 亚洲一级二级在线| 91精品国产欧美一区二区成人| 日本特黄久久久高潮| 久久众筹精品私拍模特| 粉嫩aⅴ一区二区三区四区| 国产精品麻豆视频| 欧美曰成人黄网| 美女被吸乳得到大胸91| 久久九九久久九九| 91成人国产精品| 日韩国产高清影视| 国产午夜亚洲精品羞羞网站| 99精品视频一区二区三区| 亚洲精品水蜜桃| 7777精品伊人久久久大香线蕉经典版下载 | 尤物在线观看一区| 欧美一区二区免费视频| 国产伦精品一区二区三区在线观看| 欧美国产欧美亚州国产日韩mv天天看完整 | 在线观看免费亚洲| 免费精品99久久国产综合精品| 久久久久综合网| 色悠悠久久综合| 蜜臀久久99精品久久久画质超高清| 久久麻豆一区二区| 在线欧美日韩精品| 国产一区二区三区久久久| 自拍偷拍国产亚洲| 日韩三级精品电影久久久 | 亚洲综合久久久久| 精品成人一区二区三区| 在线视频中文字幕一区二区| 精品一区二区三区的国产在线播放| 国产精品欧美一级免费| 717成人午夜免费福利电影| 国产精品夜夜爽| 亚洲成人自拍网| 国产精品伦理一区二区| 在线观看91av| 91丨九色丨国产丨porny| 韩国欧美国产一区| 日本不卡在线视频| 亚洲狼人国产精品| 国产日本欧洲亚洲| 欧美变态凌虐bdsm| 欧美伦理电影网| 色琪琪一区二区三区亚洲区| 国产成人午夜高潮毛片| 久久国产人妖系列| 日本美女一区二区三区视频| 亚洲欧美日韩在线| 亚洲品质自拍视频| 国产精品毛片久久久久久久| 久久久蜜桃精品| 精品国产一区二区亚洲人成毛片 | 精品日韩一区二区三区免费视频| 在线观看一区二区精品视频| 丰满亚洲少妇av| 成人午夜看片网址| 丰满少妇在线播放bd日韩电影| 久久超碰97人人做人人爱| 五月天国产精品| 午夜免费欧美电影| 午夜精品一区二区三区三上悠亚| 亚洲精品久久久蜜桃| 亚洲图片另类小说| 亚洲欧美日本韩国| 一区二区免费在线| 亚洲国产一区二区在线播放| 亚洲一区二区三区国产| 亚洲午夜三级在线| 日韩黄色在线观看| 蜜桃av一区二区在线观看| 另类小说综合欧美亚洲| 九九精品一区二区| 丁香桃色午夜亚洲一区二区三区| 国产成人av资源| caoporm超碰国产精品| gogo大胆日本视频一区| 91美女片黄在线观看| 色欧美片视频在线观看| 欧美色中文字幕| 欧美一区二区三区在| 精品国产青草久久久久福利| 久久毛片高清国产| 亚洲青青青在线视频| 天天色天天爱天天射综合| 美女网站色91| 不卡的电视剧免费网站有什么| 日本国产一区二区| 日韩午夜在线播放| 亚洲欧洲三级电影| 亚洲第一成年网| 国产精品一区二区久久不卡 | 国产精品1024| 色狠狠一区二区| 日韩精品一区二区三区中文不卡| 久久精品一区二区三区不卡牛牛| 国产精品久久久久一区| 日韩经典一区二区| 99久久精品99国产精品| 日韩午夜中文字幕| 尤物av一区二区| 国产精品综合一区二区三区| 一本久久综合亚洲鲁鲁五月天| 91麻豆精品国产| 亚洲人被黑人高潮完整版| 日本午夜精品一区二区三区电影| 成人在线综合网| 制服丝袜一区二区三区| 国产精品高潮呻吟久久| 久久99热这里只有精品| 欧洲一区在线电影| 久久久国产午夜精品 | 青青草97国产精品免费观看无弹窗版 | 中文字幕永久在线不卡|