柔軟な発想で問題を定式化できれば、定番のアルゴリズムを驚くほど広い範囲に適用できます。 トップクラスのプログラマが問題を解く際にどのように考えているのかを紹介します。 目次

最強最速アルゴリズマー養成講座: そのアルゴリズム、貪欲につき――貪欲法のススメ アルゴリズムの世界において、欲張りであることはときに有利に働くことがあります。今回は、貪欲法と呼ばれるアルゴリズムを紹介しながら、ハードな問題に挑戦してみましょう。このアルゴリズムが使えるかどうかの見極めができるようになれば、あなたの論理的思考力はかなりのレベルなのです。(2010/9/4) 最強最速アルゴリズマー養成講座: 病みつきになる「動的計画法」、その深淵に迫る 数回にわたって動的計画法・メモ化再帰について解説してきましたが、今回は実践編として、ナップサック問題への挑戦を足がかりに、その長所と短所の紹介、理解度チェックシートなどを用意しました。特に、動的計画法について深く掘り下げ、皆さんを動的計画法マスターの道にご案内します。(2010/5/15) 最強最速アルゴリズマー養成講座: アルゴリズマーの登
さて試験問題です。 内容は、壁とスペースで構成された迷路が与えられたとき、スタート地点からゴール地点に至る最短経路を求めよ、というものです。 たとえば、S:スタート G:ゴール *:壁 $:解答の経路 としたとき、 ************************** *S* * * * * * * ************* * * * * ************ * * * * ************** *********** * * ** *********************** * * G * * * *********** * * * * ******* * * * * * ************************** という入力に対し、 ************************** *S* * $$$ * *$* *$$*$ ************
バイキングで食事をするとき、若い頃は何も考えずにお皿にどんどん乗せていました。少々無理に盛っても、気合いで食べきっていました。元を取ってやろうとか、元以上に食べてやろうとか、そんな不純な気持ちもありましたし。しかし、このごろ、油ものや炭水化物を控えめにし、更に皿の大きさから自分の食べられる量に見当をつけて取るようになりました。食べ残しをしたくない事もありますが、おなか周りの余剰財産をなんとか増やさないようにしたいのです。その思いはなかなか実らず、だぶついた財産は心肺機能を圧迫し続けています。 さて、見当を付ける、ということは何時でも大切なことです。しかし、プログラミングの初心者のうちは、見当の付けようが分からず、組んで動かしてみて初めてパフォーマンスの悪さに愕然としたりするものです。できるなら、コードを組む前に、少なくとも動かす前にはパフォーマンスの見当を付けたいものです。今回から学習する
細かすぎて伝わりにくいTopCoderのコーディングスキル向上マジック:最強最速アルゴリズマー養成講座(1/3 ページ) 競技プログラミングはレベルの高い人たちの集まり――そんな考えを持っている初心者の方、TopCoderはあなたのコーディングスキルを爆発的に高める魔法のような場です。今回は、初心者にこそお勧めしたいTopCoderの魅力について考えます。 教育的な観点から見るTopCoder 今回からTopCoderに関する実践的アルゴリズムを解説していく予定でしたが、序盤のうちに触れておきたいことがありましたので、今回の枕は“教育的視点から見るTopCoder”というテーマで少し書こうかと思います。 まず、最初に宣言しておきたいことは、この連載は初心者向きである、ということです。「どう考えても上級者向けだろう」という意見はたくさんの方から寄せられていますが、筆者は、まだプログラミングレ
この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。 出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方) 出典検索?: "ハノイの塔" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL (2017年7月) 8つの円盤のハノイの塔 ハノイの塔(ハノイのとう、英: Tower of Hanoi)は、パズルの一種。 バラモンの塔または ルーカスタワー(英: Lucas' Tower)[注 1]とも呼ばれる。 以下のルールに従ってすべての円盤を右端の杭に移動させられれば完成。 3本の杭と、中央に穴の開いた大きさの異なる複数の円盤から構成される。 最初はすべての円盤が左端の杭に小さいものが上になるように順に積み重ねられている。 円盤を一回に一枚ずつどれかの杭に移動させる
本連載ではアルゴリズムとデータ構造を学ぶ、または学び直すことで、プログラミングのスキルを深めていきます。アルゴリズムは学問として取り扱われることが多いですが、この連載では開発の現場に役立つスキルを身に付けることを目的とします。 機械学習/Deep Learningが気になる人も要注目、「アルゴリズム」の基本が学べる無料の電子書籍150ページ 人気連載まとめ読み! @IT eBook(29) 人気過去連載を電子書籍化して無料ダウンロード提供する@IT eBookシリーズ。第29弾では「コーディングに役立つ!アルゴリズムの基本」10回分を1冊のPDFとしてまとめた。アルゴリズムとは何か? なぜ学ぶべきなのだろうか?
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く