タグ

ブックマーク / qiita.com/kgoto (2)

  • 赤黒木の本質 - Qiita

    この記事はデータ構造とアルゴリズム Advent Calendar 2019 16日目の記事です。 15日目は@minaminaoさんによる「すごいTrie」です。 17日目は@takilogさんによる「Fréchet距離の計算アルゴリズム」です。 はじめに この記事では有名なデータ構造である赤黒木がなぜあのようなトリッキーな定義になっているのかその質について解説します。 赤黒木の定義を見てトリッキーと思うかどうかは個人差あるかと思いますが、少なくとも僕が初めて赤黒木を学んだ時はなぜこのような定義になっているのか、そしてどうやって思いついたのか見当がつかずとても不思議に感じました。 しかし、その後赤黒木の成り立ちやその基になったデータ構造について知ると、トリッキーに見えた定義がとても自然であることを実感しました。 おそらく知っている人は当たり前に知っている内容だとは思いますが、知らない人

    赤黒木の本質 - Qiita
  • ハルヒ問題(最小超置換問題)の紹介 - Qiita

    はじめに 皆さんこんにちは、「データ構造とアルゴリズムAdvent Calendar」の作成者、文字列大好き文字列初心者の@kgotoです。 一昨年と去年は「文字列アルゴリズムAdvent Calendar」を作り、去年は念願の完走をしました。有り難いことに反響も大きかったです! 今年は「データ構造とアルゴリズム」と対象を広げて、一瞬でカレンダーの枠が埋まるのでは!?とドキドキしていたのですが、蓋を開けてみるとなんとまだ11日も空きがあります!! ちょっと寂しいですね。。。 もちろん無理に参加してくれとは言いませんが、この記事を読んでちょっとでも面白いと思った方は絶対参加お願いします! さて、前置きはこれくらいにして題に入っていきましょう。 データ構造とアルゴリズムAdvent Calendar第1日目では先々月にニュースサイトGigazineにも掲載されて話題になった「ハルヒ問題」を紹

    ハルヒ問題(最小超置換問題)の紹介 - Qiita
  • 1