堆排序算法.cpp
来自「大学计算机专业课程中数据结构各章的算法设计」· C++ 代码 · 共 36 行
CPP
36 行
#include<iostream.h>
const int N=8;
void output(int table[],int n);
void swap(int table[],int i,int j);
void sift(int table[].int left,int right)
{
int i,j,x;
i=left;
j=2*i;
x=table(j<right)
{
if(j<right&&table[j]>table[j+i])
j++;
if(x>table[j])
{
table[i]=table[j];
i=j;
j=2*i;
}
else
j=right+1;
}
table[i]=x;
cout<<"sift "<<left<<"~"<<right<<" ";
output(table,N+1);
}
void heapsort(int table[],int n)
{
int j;
for(j=n/2;j>0;j--)
sift(table,j,n);
for(j=n,j>1;j--)
{
swap
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?