shomanのブログ

ただの備忘録

2020-02-01から1ヶ月間の記事一覧

最小値をO(1)で返すスタックの実装

概要 前の記事でGoによるスタックの実装を紹介しました。 shoman.hatenablog.com そんな中でCracking the Coding Interviewの3.2の問題で以下のようなものがありました。 問題 pushとpopに加えて、最小の要素を返す関数minを持つスタックをどのようにデザイ…

Goでのスタックの実装

Go

概要 Goの標準パッケージにはスタックは含まれていない様です。 そこでスライスを使ってintを格納するスタックを実装してみました。 環境 golang v1.12.5 実装したメソッド Push: 値をトップに追加 Pop: 値をトップから削除して返す Peek: トップの値を返す …

障害物のあるグリッドの最短経路

前置き Cracking the Coding Interviewの8.2に以下のような問題がありました。 世界で闘うプログラミング力を鍛える本 コーディング面接189問とその解法作者:Gayle Laakmann McDowell出版社/メーカー: マイナビ出版発売日: 2017/02/27メディア: Kindle版 問…

【回文の順列】ビット列の中で1が一個であるか判別する方法

前置き ある問題を解いているときに、ビット列の中で1が一個であるか判別する方法で、なるほど!と思った解法が載っていたので、忘れないよう書き留めておきます。 結論 if checker&(checker-1) == 0 { // 1が一個だけ } else { // それ以外 } チェックした…

AtCoder【ARC061 C, ABC045 C】たくさんの数式 - Many Formulas

問題 '1'~'9'の数字からなる文字列が与えられるとき、文字の間に任意の数の'+'を入れて表される数式の値の和を求めよ。 制約 C - Many Formulas 前置き 各数字の間に'+'を入れるか入れないかを考えると、全部で通りとなります。 一つの解法として、bit全探索…