BツリーとB +ツリーの違い

主な違い:コンピュータでは、バイナリツリーはデータを格納し、ユーザーがアルゴリズム時にデータにアクセス、検索、挿入、削除できるようにするツリーデータ構造です。 BツリーとB +ツリーの違いは、Bツリーではキーとデータを内部ノードとリーフノードの両方に格納できるのに対し、B +ツリーではデータとキーはリーフノードにしか格納できないことです。 。

二分木は、磁気ディスクなどの直接アクセス二次記憶装置上でうまく機能するように設計されたバランスのとれた探索木である。 Rudolf BayerとEd McCreightはBツリーの概念を発明しました。

Bツリーは一般化された二分探索木で、どのノードにも3つ以上の子を持つことができます。 Bツリーの各内部ノードには、いくつかのキーが含まれています。 これらのキーは値を分離し、さらにサブツリーを形成します。 Bツリーの内部ノードは、事前定義された範囲内に配置された可変数の子ノードを持つことができます。 それぞれのノードからデータが挿入または削除されると、子ノードの数が変化します。 事前定義された範囲を維持するために、内部ノードを結合または分割することができます。 Bツリーでは、事前定義された範囲を維持する必要があるため、ある範囲の子ノードが許可されます。

Bツリーは、他の自己均衡検索ツリーとは異なり、頻繁にリバランスする必要はありません。 これらのツリーのノードは常にいっぱいではありません。 したがって、これらの木ではスペースが不要に消費され、スペースが無駄になります。 子ノードの数の下限と上限のみが通常、特定の実装に対して固定されています。 たとえば、2-3 Bツリー(多くの場合、単に2-3ツリーと呼ばれる)では、各内部ノードに含まれる子ノードは2つまたは3つだけです。

さらに、Bツリーは、大きなデータブロックを読み書きするシステムに最適化されています。 データベースやファイルシステムでよく使われています。 Bツリーでは、すべてのノードがルートノードから同じバランスの深さに保たれます。 これらの深さは、要素数が増えるにつれてゆっくりと増加します。 これにより、すべてのリーフノードがルートからさらに離れたもう1つのノードになります。 さらに、Bツリーは、データにアクセスするのにかかる時間に関して、他の実施形態と比較したときにより有利である。

B +ツリーはノードを持つn配列ツリーで、ノードごとに多数の子で構成されています。 ルートは、リーフまたは3つ以上の子を含むノードです。 B +ツリーは、ルート、内部ノード、およびリーフで構成されています。

B +ツリーはBツリーと同じです。 唯一の違いは、B +ツリーの下部にリンクされたリーフが追加された追加のレベルがあることです。 また、Bツリーとは異なり、B +ツリーの各ノードにはキーのみが含まれ、キーと値のペアは含まれません。

さらに、バランス係数またはB +ツリーの次数は、ツリー内の内部ノードの容量、つまりそれらが持つことができるノードの数を測定します。 ノードに対する実際の子の数は、内部ノードに対して制限されています。 ただし、ルートは2つ以上の子を持つことが許可されているため例外です。 たとえば、B +ツリーの順序が7の場合、各内部ノード(ルートを除く)は4から7個の子を持つことができます。 B +ツリーの主な価値は、効率的な検索のためにデータをブロック指向のストレージコンテキスト、特にファイルシステムに格納することにあります。

B +ツリーの主な価値はデータの保存と維持にあり、データが失われることはありません。 このアプローチは、特にブロック指向のストレージコンテキストと特定のファイルシステムに適用されます。 B +ツリーの一番下のインデックスブロックである葉は、リンクリストで互いにリンクされていることがよくあります。 したがって、これにより、ブロックを介した範囲照会または順序付き反復がより単純で効率的になります。 さらに、B +ツリーでは占積率が無駄になりません。 B +ツリーは、効率的な住宅データ構造フォーマットを提供します。これにより、アクセスと格納が簡単になります。 B +ツリーは、データが通常ディスクに存在するデータベースシステムインデックスとして特に役立ちます。

BツリーとB +ツリーの比較

Bの木

B +ツリー

短いウェブの説明

ABツリーは、すべての端末ノードがベースから同じ距離にあり、すべての非端末ノードがnから2 nの間のサブツリーまたはポインタを持つツリー形式の情報格納および検索のための組織構造です。 nは整数です。

B +ツリーは、変数を持つn配列ツリーですが、多くの場合、ノードごとに多数の子を持ちます。 B +ツリーは、ルート、内部ノード、およびリーフで構成されています。 ルートはリーフまたは2つ以上の子を持つノードのいずれかです。

としても知られている

バランスのとれた木。

Bプラス木。

スペース

に)

に)

サーチ

O(log n)

O(log b n)

インサート

O(log n)

O(log b n)

削除する

O(log n)

O(log b n)

ストレージ

Bツリーで、内部ノードまたはリーフノードに格納されている検索キーとデータ。

B +ツリーでは、データはリーフノードにのみ格納されます。

データ

3つのストアのリーフノードは、実際のレコードではなくレコードを指します。

ツリーのリーフノードには、レコードへのポインタではなく実際のレコードが格納されています。

スペース

これらの木はスペースを無駄にする

そこの木はスペースを無駄にしません。

葉ノードの機能

Bツリーでは、リーフノードはリンクリストを使用して格納できません。

B +ツリーでは、リーフノードデータは順次リンクリストに並べられます。

検索中

この場合、リーフノードにデータが見つからないため、Bツリーでの検索は困難になります。

ここでは、すべてのデータがリーフノードにあるため、B +ツリー内の任意のデータの検索は非常に簡単です。

検索機能

このBツリーでは、検索はB +ツリーと比べてそれほど簡単ではありません。

ここでB +ツリーでは検索が簡単になります。

冗長鍵

それらは冗長な検索キーを格納しません。

それらは冗長な検索キーを格納します。

アプリケーション

それらは古いバージョンであり、B +ツリーと比べてそれほど有利ではありません。

多くのデータベースシステムの実装者は、B +ツリーの構造上の単純さを好みます。

推奨されます

関連記事

  • との差: Sony Xperia JとKarbonn Titanium S5の違い

    Sony Xperia JとKarbonn Titanium S5の違い

    主な違い: Xperia Jは2012年10月にXperia Tのより安価な変種として発表された。その結果、電話機はTと同様のデザインを採用することになった。 245. Karbonn Titanium S5は、540 x 960ピクセルの解像度で5.0インチのディスプレイをサポートしています。 1.2 GHzのQualcomm Snapdragon Quadコアプロセッサと1 GBのRAMで動作します。 Xperiaは、Sony Mobileの一部であるスマートフォンの有名なブランドです。 Xperiaブランドは当初エリクソンとのコラボレーションでしたが、その後解消されました。 今、ソニーは以前のバージョンの品質とデザインのレベルを維持し
  • との差: トラベラーズチェックとトラベルカードの違い

    トラベラーズチェックとトラベルカードの違い

    主な違い: トラベラーズチェックは、通貨が刻印されているプリペイド紙です。 これらの通貨は、20、50、100などの数であり、通常の通貨として使用できます。 プリペイド外国為替カードはクレジットカードやデビットカードとして機能し、彼らもその一部を見てください。 どのような通貨でも、時には複数の通貨でもロード可能な小型の3.5インチカード。 海外旅行時の人の最大の関心事は通貨です。 大量の現金を持ち歩くことは良い選択とは見なされません - そのため企業はより良いものを考え出しました。 トラベラーズチェックとトラベルカードは、旅行中に使用できる2つの異なるタイプの現在のオプションです。 2000年代の開始前は、トラベラーズチェックは外国旅行の前に手に入れることができた外貨から非常に人気がありました。 最近では、彼らは死にかけている品種です。 これらに慣れていない多くの人々にとって、トラベラーズチェックは通貨がそれらに刻印されていた前払いの紙切れです。 これらの通貨は、20、50、100などの数字でした。彼らは
  • との差: DSPとマイクロプロセッサの違い

    DSPとマイクロプロセッサの違い

    主な違い: マイクロプロセッサは、単一または少数の集積回路(IC)上にコンピュータの中央処理装置(CPU)の機能を組み込んでいます。 マイクロプロセッサの目的は、デジタルデータを入力として受け取り、それを命令に従って処理してから出力することです。 他方、DSPプロセッサは特定のタイプのマイクロプロセッサである。 DSPはデジタル信号処理を表します。 基本的にはデジタル信号または情報信号に対して行われる信号処理です。 マイクロプロセッサは、単一または少数の集積回路(IC)上にコンピュータの中央処理装置(CPU)の機能を組み込んでいる。 マイクロプロセッサの目的は、デジタルデータを入力として受け取り、それを命令に従って処理してから出力することです。 これはシーケンシャルデジタルロジックとして知られています。 マイクロプロセッサは内部メモリを持ち、基本的にバイナリシステムで動作します。 ほとんどの汎用マイクロプロセッサはパーソナルコンピュータに存在します。 それらは多くの場合、計算、テキスト編集、マルチメディア表示、およびネットワークを介した通信に使用されます。 他のマイクロプロセッサは組み込みシステムの一部です。 これらは、家電製品、自動車、携帯電話、産業用プロセス制御など、事実上あらゆる技術に対するデジタル制御を提供します。 他方、DSPプロセッサは特定のタイプのマイクロプロセッサであ
  • との差: Microsoft Surface RTとDell XPS 10 Tabletの違い

    Microsoft Surface RTとDell XPS 10 Tabletの違い

    主な違い: Microsoft Surface RTは、密度が約148 ppiの10.6インチTFT HD静電容量式タッチスクリーンを備えたタブレットです。 画面は真の16:9アスペクト比を提供します。 ただし、OSは古いWindows PCプログラムと互換性がありません。 Dell XPS 10は10.1インチタブレットで、ラップトップにするためのキーボードDockが付属しています。 画面は1366 x 768ピクセルと約155 ppiピクセル密度のHDディスプレイ容量性マルチタッチスクリーンです。 なめらかなタブレットは金属製のシャシーを持ち、より良い握りやすさのためにラバーバックを持っています。 より大きく、より良く、より
  • との差: Lenovo IdeaPad Yoga 11とDell Latitude 10 Windowsタブレットの違い

    Lenovo IdeaPad Yoga 11とDell Latitude 10 Windowsタブレットの違い

    主な違い: レノボIdeaPadヨガ11のユニークな側面は、それがマルチモード360度フリップデザインのコンバーチブルラップトップであるということです。 これにより、デバイスは4つのデザインモードを使用できます。 これには、ラップトップモード、タブレットモード、テントモード、そして最後にスタンドモードが含まれます。 Lenovo IdeaPad Yoga 11は11.6インチの高精細ディスプレイを備えており、重さは1.27kgです。 NVIDIA Tegra 3プロセッサと2GB DDR3L RAMを搭載しています。 Latitude 10タブレットは658グラムと非常に滑らかで軽量です。 これらのデバイスは、10.1インチIPS(1366 X 768)広視野角LCD静電容量式タッチスクリーンを搭載し、1.8 GHz Intel Atom Z2760プロセッサを搭載しています。 Lenovo Group Limitedは、ノースカロライナ州モリスビルに本社を置く中国の多国籍企業です。 同社は、パーソナルコンピュータ、タブレット
  • との差: Sony Xperia Z TabとGalaxy Note IIの違い

    Sony Xperia Z TabとGalaxy Note IIの違い

    主な違い: ソニーは最近、改良されたスマートフォンとタブレットのラインを発表しました。 新しい主力携帯電話ソニーXperia Zと一緒に、同社はまた、新しいタブレット、ソニーXperia Zタブを追加しました。 このタブレットは10.1インチTFT静電容量式タッチスクリーンをサポートし、Sony Mobile BRAVIA Engine 2テクノロジを使用して作成されています。 Samsung Galaxy Note IIはSamsung製のスマートフォンで、Androidベースのデバイスです。 Note IIは、5.5インチ(141 mm)の大型ディスプレイ、およびSペンと呼ばれるスタイラスの一体的使用
  • との差: データと情報の違い

    データと情報の違い

    主な違い: データと情報は相互に関連しています。 データは通常、生データ、または未処理のデータを指します。 それはデータの基本的な形であり、分析も処理もされていないデータです。 データが分析されると、それは情報と見なされます。 情報とは、「特定の事実または状況に関して伝達または受信された知識」です。 情報は、メッセージとして解釈できる一連の記号です。 それはある問題についての知識や洞察を提供します。 データと情報は相互に関連しています。 実際、それらはしばしば誤って互換的に使用されています。 データは生データと見なされます。 それは「項目のセットに属する、定性的または定量的変数の値」を表します。 数字、文字、または一連の文字の形式になります。 それはしばしば測定によって集められます。 データ計算またはデータ処理では、データは、表形式データ、データツリー、データグラフなどのような構造で表される。 データは通常、生データ、または未処理のデータを指します。 それはデータの基本的な形であり、分析も処理もされていないデータです。 データが分析されると、それは情報と見なされます。 情報とは、「特定の事実または状況に関して伝達または受信された知識」です。 情報は、メッセージとして解釈できる一連の記号です。 それはある問題についての知識や洞察を提供します。 情報は、標識として記録することも、信号とし
  • との差: HTC Windows 8XとLG Optimus F7の違い

    HTC Windows 8XとLG Optimus F7の違い

    主な違い: HTC Windows 8Xは、342ppiのピクセル密度を提供する4.3インチのS-LCD2静電容量式タッチスクリーンを備えています。 画面はゴリラガラス2を使用して保護されているため、耐久性が高く、傷が付きにくくなっています。 携帯電話はかなり滑らかでスリムで、バッテリーの重さはわずか130グラムです。 LGコンボイF7は4.7インチの画面を備えており、Android 4.1.2(Jelly Bean)で実行されます。 ハードウェアに関しては、1.5 GHzのデュアルコアプロセッサ、2 GBのRAM、8 GBの内部記憶容量があります。 HTCはもともとWindows OSを搭載した多くの電話機を製造していましたが、その後、より多くの顧客と利益を引き出すために製品をAndroidに移行しました。 最近、HTCはWindowsが新しいHTC Windows 8Xと8S電話でその製品範囲を拡大するのを手伝うことに焦点を置いています。 携
  • との差: コースコースとコースコースの違い

    コースコースとコースコースの違い

    主な違い :「粗い」という用語は、一般的にテクスチャ、具体的には粗いまたは粗いテクスチャを指します。 粗い質感は通常、物が大きな粗い粒子や粒子で構成されているという事実から来ています。 一方、「コース」という用語は、経路または旅行の方向を指すことができ、または経路または旅行の方向、すなわち教育的なコースを指すことができる。 おおまかな単語はもちろん同義語の例であり、基本的にはそれらが発音されたときに全く同じように聞こえる単語であることを意味しますが、実際にはそれらは異なるスペルと意味を持ちます。 「粗い」という用語には、さまざまな定義があります。 それは最も一般的には質感、具体的には粗いまたは粗い質感を指す。 粗い質感は通常、物が大きな粗い粒子や粒子で構成されているという事実から来ています。 例:壁はとても粗い。 それは粗い砂でできているからです。 この用語は、ワインが粗い味をしているなど、劣った品質の食品や飲み物を表すのにも使用できます。 人の観点から言えば、その言葉は彼らの身体的特徴(彼は非常に粗い鼻を持っていた)、すなわち不規則、下品、そして魅力的ではないのいずれかを指すことができる。 またはそれは彼らのマナー(彼女は非常に粗いマナーを持っていた)、すなわち礼儀正しくない、または非常に荒くて礼儀正しくないことを指すことができます。 一方、「コース」という用語には多数の定義があり

エディターズチョイス

電子レンジとオーブントースターの違い

主な違い: 電子レンジは食品を加熱するために電子レンジを使用するオーブンの一種です。 マイクロ波は、電磁波スペクトル上で電波と赤外線との間に挟まれる一種の電磁波である。 トースターオーブンは、正面玄関、取り外し可能なワイヤーラック、取り外し可能なベーキングパンを備えた小型の電気オーブンです。 オーブンはほとんどすべての家庭で必需品です。 オーブンは今日の世界で重要な役割を果たしている、彼らは必要不可欠です。 私達は私達自身を調理しそして供給するためにオーブンを必要とする。 オーブンは火の発明以来存在しており、調理、石積みおよび鍛造などの様々な目的に使用されてきた。 世紀の変わり目には、生活を楽にするために考案されたさまざまな種類の器具があります。 これらの新しい電気器具には電子レンジとオーブントースターが含まれています。 電子レンジは、人々ができるだけ短時間で食品を加熱し、特定の食品を調理することをより容易にした一方、オーブントースターは短時間で少量の食品を焼くことおよび乾杯することをより効率的にする。 電子レンジは食べ物を加熱するために電子レンジを使うオーブンの一種です。 マイクロ波は、電磁スペクトル上で電波と赤外線との間に挟まれる一種の電磁波であり、それらの周波数範囲は300MHz(0.3GHz)から300GHzの間の範囲である。 この周波数のマイクロ波の興味深い特性は、マイクロ