問題タブ [max-heap]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - JVM keeps calling garbage collector for no apparent reason
While testing MaxFreeHeapRatio and MinFreeHeapRatio I found the following situation:
Garbage collector activity profiling
So, the JVM keep executing the garbage collector even though there is lots of free memory available.
I'm using the following flags:
Any idea of the reason for this behavior?
algorithm - max heapify を理解しようとしている
http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-006-introduction-to-algorithms-fall-2011/lecture-videos/lecture-4-heaps-andを見てみました-heap-sort/ヒープとヒープソートを理解するためですが、これは明確ではありませんでした。
max-heapify の機能がわかりません。再帰関数のように見えますが、どういうわけか、ツリーの高さのために対数時間で実行されると言われています。
私にはこれは意味がありません。最悪の場合、すべてのノードを逆にする必要はありませんか? すべてのノードに繰り返し触れずにこれを行う方法がわかりません。
c - max-heap の値の優先度を変更するには?
優先度/値を変更できる最大ヒープを作成しています。ただし、コードの何が問題なのかを理解するのに問題があります。私は参照としてこれに従いました: ref これは私のコードです (ここでは焦点ではないため、いくつかの関数を非表示にしています)
次の実行を行うと、悪い結果が得られます...何が問題なのですか? 例えば...
HEAP_ELEM の位置を知るために、配列を使用して HEAP_ELEM のインデックスを格納していることに注意してください (主キーとして「fu」を持ち、その優先度を変更します。これが私の出力です。
java - キーと値のペアを TreeMap に追加している間、Java TreeMap のサイズを一定に維持する方法は?
CODE IS HEREは、ソートされた順序でマップに追加されたキーと値のペアを追跡する Java の TreeMap の素晴らしくシンプルな例です。ただし、TreeMap に 10 個のアイテムしか保持しないようにする方法がわかりません。TreeMap のサイズが常に 10 などの定数であることを確認するにはどうすればよいですか? したがって、元の問題は、キーと値のストリームが入ってくる間、TreeMap の値で重み付けされた上位 10 個のキーと値のペアを追跡することです。
TreeMap のサイズを制限するために Java でコードを記述する方法を確認したいと思います。私はそれが次のようなものだと考えています: 最初に新しいキーと値のペアを TreeMap に追加し、次に TreeMap のサイズを確認し、それが 10 より大きい場合は、TreeMap から最小のキーと値のペアを削除し、サイズは 10 に戻り、TreeMap は内部に新しいキーと値のペアを追加する準備ができています。
java - Fuse ESB ルーターの最大ヒープを増やす場所は?
月に約 1 回、ルーター コンポーネントがハングし、トラフィックが停止します。「OutOfMemoryError: Java heap space」エラーがログに記録されます。一貫して約 0.5 GB の物理メモリを使用していると思います。
構成ファイルは「C:\fmc-1.0.2.fuse-097\instances\esb-router-container\etc」に配置されているようですが、jvm オプションの場所が見つかりませんでした。「-Xmx512m」などを追加するための所定の場所はどこですか?
esb 全体を最新バージョンにアップグレードすることに興奮していません。
algorithm - Max-Heap からノード A[i] を削除する
CLRS 演習: 6.5-8
この操作は、 node の項目をheap からHEAP-DELETE(A,i)
削除します。n 要素の最大ヒープに間に合うように実行される の実装を提供します。i
A
HEAP-DELETE
O(lg n)
A[10]={84,22,19,21,3,10,6,5,20}
入力(インデックスは1から始まる)とA[6]=10
削除されたアルゴリズムが間違っているのだろうか。最後のノードを で置き換えると、A[6]
ヒープ プロパティに違反し、親の値が見落とされます。
このためのアルゴリズムを作成しましたが、それが正しく機能するかどうか、またはどこが間違っているかを知りたいと思いました。
java - Maxheap と優先度キューの混乱
値に基づいてハッシュマップをソートしたいとします。これを行うには、コンパレータを使用して priorityQueue を実装します。その結果、結果の pq は、インデックス 0 から最後まで、最大から最小へと並べ替えられます。
コードは次のとおりです。
しかし、誰かがそれは maxheap だと言いました。ヒープは単に親の値が子の値よりも大きいことは理解していますが、なぜ maxheap なのか理解できませんか? コンパレーターをpriorityQueueに実装しているだけですか?これはヒープとどのように関係していますか?