第1章 競技プログラミングとは?(p.7~) 第2章 AtCoderの始め方(p.43~) 第3章 競プロで必要な「アルゴリズムと思考力」(p.86~) スライドのまとめ(p.154~)
テキストエディタのデータ構造 Gap method Piece Table method Piece Table の構造 Piece Table の実装 Piece Table のメソッド まとめ テキストエディタのデータ構造 テキストエディタで採用されているデータ構造にはいろいろあります。 こちらの論文 Data Structures for Text Sequences では各種データ構造について比較検討されています。 多くは、Gap method や Piece table method をベースにしたものが多いのではないでしょうか(図で言う最下部の中心の丸印に当たります)。最近では Rope なども有名ですね。 Gap method Gap method では、現在のカーソル位置で、テキストバッファを2つに分割し Gap を間に挟み、カーソル位置に対する編集(テキスト追加/削除)を
1. はじめに 最初に、本記事ではどのようなトピックを扱うのかについて、少し説明したいと思います。 1-1. 本記事で扱うトピック 21 世紀になり、IT 化が急速に進む今、現実社会ではいろいろなものが最適化されて動いています。これを形作るプログラミングの現場でも、例えば以下のような問題を考えたり、あるいは実際に使ったりすることもあるのではないでしょうか1。いくつか例を挙げてみましょう。 例 1. コイン問題:特定の金額をぴったり支払うために、最小で何枚の硬貨が必要か? 例 2. 最短経路問題:地図上の A 地点から B 地点までに行くのに、最短で何メートル歩く必要があるか? 例 3. 箱詰め問題:長方形の箱に、できるだけ多くの荷物を敷き詰めたい 例 4. 数分割問題:「できるだけ合計の値が近くなるように」2 つのグループに分割したい このように、いろいろな問題があります(もちろん名前を覚
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く