关于delete删除堆空间出错的问题

问题遇到的现象和发生背景

运行到了后面就出现如下页面:
void __CRTDECL operator delete(void* const block) noexcept
{
#ifdef _DEBUG
_free_dbg(block, _UNKNOWN_BLOCK);
#else
free(block);
#endif
}

问题相关代码,请勿粘贴截图

在代码中只用过new申请了两个堆空间数组,在析构函数中用delete
huffTree = new HNode[2*n-1];其中n=3
HCodeTable = new HCode[n] 同上,n=3

delete []  huffTree ;
delete []  HCodeTable  ;
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果