1. 程式人生 > >大頂堆插入新元素

大頂堆插入新元素

typedef int keytype;
void INSHEAP(keytype K[],int &n,keytype item){
	int i,j;
	n++;//長度加一
	i=n;
	while(i!=1){
		j = i/2; //j為i的雙親結點
		if (item < K[j])
		{
			break;
		}
		K[j] = K[i]; //將k[j]下移到k[i]的位置
		i=j; //改變元素位置為雙親結點,進行下一步判斷
	}
	K[i] = item;
}