蛮力法、动态规划法、回溯法和分支限界法求解(8)

时间:2026-01-13   来源:未知    
字号:

int p; //物体价值

};

struct HEAP //堆元素结构体

{

KNAPNODE *p;//结点数据

int b; //所指结点的上界

};

//交换两个堆元素

void swap(HEAP &a, HEAP &b)

{

HEAP temp = a;

a = b;

b = temp;

}

//堆中元素上移

void mov_up(HEAP H[], int i)

{

bool done = false;

if(i!=1){

while(!done && i!=1){

if(H[i].b>H[i/2].b){

swap(H[i], H[i/2]);

}else{

done = true;

}

i = i/2;

}

}

}

//堆中元素下移

void mov_down(HEAP H[], int n, int i)

{

bool done = false;

if((2*i)<=n){

while(!done && ((i = 2*i) <= n)){

if(i+1<=n && H[i+1].b > H[i].b){

i++;

}

if(H[i/2].b<H[i].b){

swap(H[i/2], H[i]);

}else{

done = true;

}

}

蛮力法、动态规划法、回溯法和分支限界法求解(8).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:19 元/月 原价:99元
低至 0.1 元/份 每月下载300
全站内容免费自由复制
VIP包月下载
特价:19 元/月 原价:99元
低至 0.1 元/份 每月下载300
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)