<代码> # include“stdafx.h” # include & lt; iostream> 使用名称空间性病; template空调整(T * arr int, int len) { T temp=arr(信号);//每一次循环都更新该父节点为根的完全二叉树最大的堆 for (int i=符号* 2 + 1;我& lt;兰;我=* 2 + 1){ 如果(i + 1 & lt;兰,,加勒比海盗(i + 1)比;加勒比海盗[我]) 我+ +;//判断子节点大于父节点 如果(arr[我]比;临时){ arr[签署]=arr[我]; 符号=我; } } 加勒比海盗(迹象)=temp; } template 无效的交换(T * arr int x, int y) { T temp=arr [x]; arr [x]=arr [y]; 加勒比海盗[y]=temp; } template 孔隙类型(T * arr int长度){//1。从所有非叶子节点构建初始大顶堆 for (int i=长度/2 - 1;我在=0;我(){ 调整(加勒比海盗,我、长度); }//for (int i=- 1长度;我;我(){//2。交换最大堆和相对的最后一个元素 交换(加勒比海盗,我,0);//3 .重新调整堆结构 调整(arr 0我); } } template 空白打印(const T * ar, int len) { for (int j=0;j & lt;兰;j + +) { cout & lt; & lt;j & lt; & lt;”:“& lt; & lt;基于“增大化现实”技术的研究[j] & lt; & lt;endl; } } int _tmain (int命令行参数个数,_TCHAR * argv []) { arr int []={0、2、1, 4, 3、6、8、9、7、5}; 排序(arr 10); 打印(arr 10); 获取字符(); 返回0; }代码>