アルゴリズムのメモ - 入門 - データ構造の章

アルゴリズムのノート-入門-データ構造の章
スクラッチアルゴリズムから学ぶために今は研究は大学卒業後ほとんど忘れ、アルゴリズムがなかった、と新しいピットを開くには、ハハ、私は上に保持することができるように願っていますが、私は保持することができるようになります私彼の体が壊れて、李ジンパルプ洗浄のように、自分のすべてを再形成、心の先頭に戻り、リスナーの御馳走のすべての名の下に、私はすべて自分の好きなことを行うため。

の基本的なデータ構造

データ構造とは何ですか

はっきり非常に単純なことをされて配置するには、コンピュータに保存されたデータは、預金の法律を持っている必要があり、ないうち手の、あなたが見上げると同じように、あなたはページの後にページを回した単語の子を見つけることができます、また、アルファベットは、ワード子に直接ジャンプするために押すことができますこれは、データ構造を決定することで、辞書データ構造であるデータ配列と位置の関係を

データ構造サブクラス - リスト

一覧、この事は、抽象のいくつかを理解することになり、それは大学の教科書を表すデータの線形アレイである、私はあまりないトラブルを言うと思います、リストは実際に電車で、例えば、4台の車が今そこにある、あなたは合格しなければなりません言うことです、次のセクションに行くために、キャリッジ、キャリッジ(リスト)記号(ポインタ)を持っている、あなたは、基礎となるキャリッジ(次のアドレスを指す)に1回のダウンを持っています。
、ゆっくりと、今あなたは、1つのダウンずつチェック追加する必要が物事をこのようなものをリストし、削除データは、最初のポインタを変更する必要があります。
チェック物事、カナダO表記は、その複雑さはO(N)で、アルゴリズムは非常に遅くまであります。

サブのクラスデータ構造 - 配列

データ構造体配列は、またリニアアレイ、リストは、リストには、あなたは私の弟は次だったが、配列は、それはあなたを伝える事の配列の下で主題によって呼び出され、同じではありませんが誰であるかを教えに頼るのポインタであることを覚えている、私がいましたPythonで、いくつかの最初の、このようなものがリストに使用されて、ちょうど= [1,2,3,4,5]本形態のように、[0] = 1、 [1] = 2。 ......
実際には、あなたが"、一般的にランダムアクセス、配列のインデックスへの直接アクセス、あなたはあなたに、食べてもらう子どもの数に相当し、何か、と呼ばれる人々である、内部のものの配列を確認したいですこの機能で食事!「配列の添字の番号XXX。
配列の中に、あなたは、それがトラブルのビットすることができ追加したり、要素を削除するには、配列の末尾に持って、プラス収納スペースの数は、合計では新しい要素が行くする場所がなかったことはできません、そして、あなたは新しい友達に古い要素を聞かせてその後、テン位置し、古くからの友人、新しい友人に戻って急いで、正常にキューをジャンプします。

サブのクラス・データ構造 - スタック

スタック兄弟は、少し問題を理解すると思う、あなたは新鮮な果物を食べることができ、いつでも、毎日新しい果物を持って、あなたは常にだけ以下に新しいフルーツ、古い果物を得ることができますので、あなたの場合します古い果物を食べて、あなたはとして知られている果物の小さな箱、判明うスタックを、と呼ばれる果物バック、入れスタックには、この事は、あなただけの日付までに得ることができるということです、LIFO、LIFO構造、このようなもの子供たちは非常に不便でした。
あなたは、例えば、最新のデータの前に現在のイベントを保つ付近の人々 、そしてその上で、このようなものを取る必要がある場合でも、ビジネスで、より多く持つようなものです。

サブのクラス・データ構造 - キュー

そして、スタックの兄上の代わりに、キューの手段は、あなたがああに進出していることで、あなたが最初に私の古いデータに時間が必要なエッジに沿って移動し、行くを再生しながら、最も古いデータ、新しいデータからデータを取るために得ます。新しいデータを取るしたいですか?あなたがそこまで出かけるまで申し訳ありませんが、あなたは、一つずつ出てきます。

サブのクラス・データ構造 - ハッシュテーブル

彼は、少しGETでこれを言ったが、ああ、あなたはPythonの辞書(辞書)を持っているに書かれたPythonを、知っている必要があり、このようなものは、たとえば、値に対応するキーの辞書です、

{
    "蔡徐坤" :"篮球",
    "吴亦凡" :"说唱"
}

これは、辞書を有効にし、あなたは、私たちは一般的に、このようなものは、それが配列のようなもので、辞書の事を保ったが、非常に異常な物事を維持され、この関係とTMハッシュテーブル何、ハッシュテーブルを頼むかもしれません我々は、「カイ徐くん」キーを計算するためにハッシュ関数を使用する、すなわち、「カイ徐くん」のハッシュ値、アレイ(ハッシュテーブルの長さ)の長さで割ったハッシュ値が得られると、算出した余りを取る「カイ徐くん」アレイ位置で、その後、袋に入れて。ここではより抽象的な、背後には、具体的には、ハッシュアルゴリズムについてお話します。
それでは、どの最初、私たちが得たすべての、「カイ徐くん」のハッシュ値が、その後、あなただけを計算することにより、ハッシュテーブルの「カイ徐くん」位置を見つけるだろう、それを確認してください。

サブのクラス・データ構造 - スタック

ハイライトは来て、このようなものは、ツリーは、定義によって、ボスを持っているヒープ、このようなものは優先度キューと係合するために使用され、木の表情を想像して、ツリーの分岐され、ノードと呼ばれる頂点は、すべてのデータポイントは、手の複数のは、彼が親ノードの子ノードの一般的な点よりも大きく、一般的に最小値がスタックにある子ノードと呼ばれる彼がカバー兄弟ノード、あります。
スタックトップのデータが小さいが、時間の複雑さO(1)です取ってどのくらいのデータの量、どんなにので、常に最小です。
さらに、なぜならダウン移動しながら、取り出したデータの最後の先頭からデータを移動し、サブ接合点データながらサイズと比較する必要があるため、抽出された高さは、ツリー・データのために必要な動作時間に比例します。データの量は、N、木のスタック高さの形状特性がlog2n知られており、その後の時間複雑度は、次に再構成されたツリーO(LOGN)であると仮定する。
データを追加することと同じです。必要ツリー実行時の高さに比例したデータを追加するので、出会うまで、上方スタックの条件を移動させながら、親ノードデータとを比較しながら、最終的な付加データスタックのサイズ後、O(データでありますLOGN)

サブカテゴリデータ構造 - 二分探索木

二階と、単にツリー構造としては、同じではない各ノードは、ノード値、抽象右の左の部分木のいずれよりも大きい、二分木の値は、図のビューは

関係なく、それを意味しますどのように、常に私より年下の弟を残しました。
第2の相違点は、右が私の兄より優れているということである、図続け

、これは基盤の一部であるラフな書き込みをした、よく書かれ、オーバー、私を許して!

おすすめ

転載: www.cnblogs.com/Yemilice/p/11828667.html
おすすめ