- C言語なら俺に聞け(入門編)Part 131 [転載禁止]©2ch.net
85 :デフォルトの名無しさん[sage]:2015/11/26(木) 21:30:45.65 ID:uW3Onm83 - 「ヒープ」の指す意味は本や文脈によって変わる。
一義的な定義は木構造だと思うけど、 配列を用いた実装が有名なので、 その実装方法や、特定の実装自体のことをヒープと呼ぶこともある。 wikipediaをwikiと呼ぶようなもんだ。
|
- C言語なら俺に聞け(入門編)Part 131 [転載禁止]©2ch.net
89 :デフォルトの名無しさん[sage]:2015/11/26(木) 21:54:42.91 ID:uW3Onm83 - 第一義としては、
> ヒープ(英: heap)とは、「子要素は親要素より常に大きいか等しい(または常に小さいか等しい)」という制約を持つ木構造の事。 が正しい。ただし、実装方法や特定の実装のことをヒープと呼ぶこともある。 「ヒープ」と言って実際に何を指しているかは、文脈から判断するしかない。
|
- C言語なら俺に聞け(入門編)Part 131 [転載禁止]©2ch.net
91 :デフォルトの名無しさん[sage]:2015/11/26(木) 22:11:00.55 ID:uW3Onm83 - >>90
同じ
|
- C言語なら俺に聞け(入門編)Part 131 [転載禁止]©2ch.net
94 :デフォルトの名無しさん[sage]:2015/11/26(木) 22:29:31.14 ID:uW3Onm83 - >>92
その理解でいいと思う ただ、「ヒープ==半順序木」が本当に第一義かというと異論あるかも。 おそらく世界で最初にプログラムとして実装された半順序木は 配列を使ったものなので、明確に区別されていなかった可能性はある。 広義と狭義だと考えといた方がいいかもしれない
|