入門レベルからのアルゴリズム解説サイト。基礎的なデータ構造からアルゴリズムの詳しい計算量まで掲載。 競技プログラミングやコンピューターサイエンスの勉強に役立ててもらいたいです。
幅優先探索とは 全探索アルゴリズムの一種です。グラフやグラフと同一視できるものを探索する際に良く使われます。深さ優先探索と似ていますが、幅優先探索は始めの状態に近いものから順番に...
【AtCoder Beginner Contest 146】D – Coloring Edges on Tree
問題 AtCoderでの問題:D - Coloring Edges on Tree 木構造について、頂点から見た時に、自身から伸びる枝に重複が無いように色を塗る問題です。使う色の...
深さ優先探索とは 全探索アルゴリズムの一種です。木などのグラフやグラフと同一視できるものを探索する際に良く使われます。幅優先探索(BFS)と似ていますが、深さ優先探索は末端に到達...
グラフとは グラフとは、頂点(ノード)と、頂点同士の関係を表したデータ構造です。 数学的には、グラフは以下の2つから構成されます。 頂点(ノード)の集合頂点同士がつながっているか...
Setとは、数学における集合をデータ構造として表したものです。順序はなく、変更可能で、重複した要素を持ちません。 要素の挿入・削除・検索を高速に行うことができる特徴があります。 ...
キューは待ち行列とも呼ばれます。最初に格納したデータが最初に出てくるような、線形なデータ構造をしていて、このような順序をFirst In First Out (FIFO)と言いま...
スタックとは 線形なデータ構造の1つです。データを格納する操作(push)と取り出す操作(pop)について、対象になるデータの順番が決められています。 スタックは、最後に格納した...
連結リストとは 連結リストはノードと呼ばれるデータの塊が、複数繋がってできたデータ構造です。 1つのノードは、格納する値自体と、次のノードへのアドレスを保持します。先頭から各ノー...
データ構造とは データ構造とは、「コンピューターがデータを効率的に扱うための方法や構造のこと」です。これには様々な種類があり、それぞれに特徴があります。 アルゴリズムの話をする際...
配列とは 配列は、連続したメモリ領域にデータを格納するシンプルなデータ構造です。データにアクセスしたい時は、配列の先頭から見て何番目のデータを取り出したいか(index)を指定し...
辞書(Dictionary)・連想配列(Associative array)・ハッシュ(Hash)・マップ(Map)
辞書はどのようなデータ構造か 「辞書」は「連想配列」・「ハッシュ」・「マップ」とも呼ばれるデータ構造の1つです。 鍵(key)の集合で構成されており、それぞれのkeyは1つの値と...
「ブログリーダー」を活用して、algo-logicさんをフォローしませんか?
指定した記事をブログ村の中で非表示にしたり、削除したりできます。非表示の場合は、再度表示に戻せます。
画像が取得されていないときは、ブログ側にOGP(メタタグ)の設置が必要になる場合があります。