为什么两个不同的概念都称为“堆”? [英] Why are two different concepts both called "heap"?

查看:194
本文介绍了为什么两个不同的概念都称为“堆”?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

为什么运行时堆用于C语言语言和数据结构中的动态内存分配都叫堆?是否有某种关系?

Why are the runtime heap used for dynamic memory allocation in C-style languages and the data structure both called "the heap"? Is there some relation?

推荐答案

Donald Knuth说:计算机程序设计的艺术,第三卷, 435):

Donald Knuth says (The Art of Computer Programming, Third Ed., Vol. 1, p. 435):


几个作者开始在1975年左右将可用内存池称为堆。

Several authors began about 1975 to call the pool of available memory a "heap."

他不会说哪些作者,也没有提及任何特定的论文,但是说,使用术语堆与优先级队列是这个词的传统意义。

He doesn't say which authors and doesn't give references to any specific papers, but does say that the use of the term "heap" in relation to priority queues is the traditional sense of the word.

这篇关于为什么两个不同的概念都称为“堆”?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆