大規模ウェブサイトのアルゴリズムとアーキテクチャについての簡単な説明(パート 2)

大規模ウェブサイトのアルゴリズムとアーキテクチャについての簡単な説明(パート 2)

順序

前回の記事「大規模 Web サイトのアルゴリズムとアーキテクチャに関する簡単な説明 (パート 1)」に続いて、このトピックを続けましょう。

上記で多くの人が話題に関係ないと言っています。これは情報の一部に過ぎないので、話題に関係ないと感じるかもしれません。主な理由は、話題が大きすぎて内容が多すぎるためです。部分的にしか書き出せません。ご容赦ください。

上司は上のことしか話しませんでしたが、真ん中や下もありますよ!

重点は基本的な部分、つまりアルゴリズムの部分にあります。これには、今日のアーキテクチャの製品で使用されるアルゴリズムが含まれており、製品の本質をある程度理解することができます。関連する建築製品について実際に話す前に、スプレーツリーに関する記事から始める必要があります。

彼はまだ始めてもいないのに!勉強するには少し時間がかかりそうです。まずはアルゴリズムを理解しましょう!

バイナリツリー

上記の 2 つの構造 (配列とリンク リスト) には、それぞれ欠点があります。

1》配列は更新時に多くのリソースを消費し、後続の要素を1つずつ移動する必要があります。

2》リンクリストを照会する場合は、先頭から1つずつ比較して、照会する内容を選択する必要があります。

要約すると、クエリと更新がより高速な構造が必要なので、バイナリ ツリーを使用します。

特徴:

各ノードには最大 2 つのサブツリーがあります。

80を見つける

実際のコードを見てみましょう:

[[94946]]実行して見てみましょう

挿入82

コードの練習を見てみましょう (注: 元のコードにメソッド insert_bit_tree が追加されています)。

[[94946]]実行して見てみましょう

#p#

バイナリツリーの問題点

非常に極端なケースで特定のデータを検索すると、上図に示すような状況が発生することは容易にわかります。データが数千万個あったら何が起こるかわかりますか?

上記の理由から、AVL ツリーとも呼ばれるバランスのとれたバイナリ ツリーを考えました。

バランス二分木: AVL 木 (1962)

実際のコードを見てみましょう。

主にこのコードを理解する

[[94946]]この関数をグラフに描きます。

オリジナルリンク: http://www.cnblogs.com/baochuan/archive/2012/10/08/2713700.html

<<:  シャッフルアルゴリズムの2つの実装の比較

>>:  大規模ウェブサイトのアルゴリズムとアーキテクチャに関する簡単な説明

ブログ    
ブログ    
ブログ    
ブログ    
ブログ    
ブログ    

推薦する

2021年に注目すべき5つのAIトレンド

リモートワークの規模拡大と、特にサイバーセキュリティに関連する企業による必要なテクノロジーの急速な導...

マスク氏の最新チップ:脳とコンピューターの相互作用に特化し、視覚障害者が「見る」ことを可能にする

自分で認めなさい!マスク氏のニューラリンクはチップを開発している。この技術は「数年以内」にリリースさ...

大きなモデルには堀がない? OpenAI の「LLM City」に侵入し、防御する方法

著者: ベン・ディクソン翻訳者 | 李睿レビュー | Chonglou制作:51CTO テクノロジー...

ByteDanceは、従来の4倍の速度を誇る高性能トレーニングおよび推論エンジンLightSeqを発表した。

Transformer モデルは、Google チームが 2017 年に発表した論文「Attent...

中国工程院院士の李軍氏:単一車両知能には5つの大きな問題があり、自動運転には新たな技術的ルートが必要

Leifeng.com(公式アカウント:Leifeng.com)注:少し前、2020年世界インテリジ...

...

人工知能と機械学習モデル向けのオープンソースフレームワークトップ5

[[253697]] [51CTO.com クイック翻訳] 過去 10 年間の人工知能の急速な成長...

神府に集い、知恵で未来を勝ち取ろう!神府デモンストレーションゾーン「ファーウェイクラウドカップ」2021年全国AIコンテストが成功裏に終了

2021年9月27日、神府改革革新モデル区、ファーウェイ、上海交通大学が共催する「神府にクラウドが集...

ハードウェアクラッキングに耐えられるハッシュアルゴリズムにはどのようなものがありますか?

[[185577]] 1. はじめにブルートフォース クラッキング ツール hashcat を使用...

金融ロボットの解読:毒ではなくアシスタント

[[231414]]会計、税務、監査などの業務でロボットが人間に取って代わったらどうなるか想像してみ...

量子畳み込みネットワークにおける「不毛のプラトー」現象が解決され、新たな研究により量子AIの大きな問題が克服された

量子コンピュータの出現は、コンピュータ分野に多くの進歩をもたらしました。量子コンピュータ上で実行され...

ビデオメモリを節約する新しい方法: 2 ビット活性化圧縮を使用して PyTorch でニューラル ネットワークをトレーニングする

[[410937]]この記事では、カリフォルニア大学バークレー校の PyTorch をベースにしたア...

1人当たり6万ドル:2024年NVIDIA奨学金リストが発表、中国人5名が選出

今週の金曜日、待望の NVIDIA 奨学金の受賞者リストが発表されました。 NVIDIA 大学院フェ...

AIoTの生死に関わる状況:将来的にはAIoTは非常に収益性が高いが、現時点ではAI+IoTは非常に高価

Huawei が初めて AIoT 戦略を発表したり、JD.com が IoT 事業を Xiaojin...

MITの最新の成果:AIが人間の脳が言語を処理する仕組みを解明

最新世代の予測言語モデルは、言語の根底にある意味の一部も学習したようです。驚くべきことに、これらのモ...