タグ

2015年12月9日のブックマーク (3件)

  • 初心者でもアルゴリズムの学習ができる入門本とサイト一覧 - paiza times

    Photo by VFS Digital Design 皆さんはアルゴリズムやデータ構造について知っているでしょうか。情報系の学部出身の人は学校の授業でやったかもしれません。一方で学校で情報系の勉強をせずにITエンジニアになったという方は、アルゴリズムやデータ構造について一度は「勉強したほうが良いんだろうな」と思いつつも、実際の業務であんまり必要なさそうだし、難しそうだし、DevOpsやオブジェクト指向やフレームワークについて学ぶので手一杯で未着手、という人も多いのではないでしょうか。 今回はそんな方に向けて、アルゴリズム、データ構造を学ぶ意義と、それらを学ぶときに役立つとサイトについてまとめました。 ■アルゴリズム、データ構造を学ぶ意味 アルゴリズムやデータ構造について語られるときに、非常に良く言われる事として「そんなものは実務に役立たたないので必要ない」という意見があります。当にア

    初心者でもアルゴリズムの学習ができる入門本とサイト一覧 - paiza times
  • 【Ruby】リバーシのプログラムを書いたりするためのgemをつくった - Qiita

    require 'reversi' Reversi.configure do |config| config.disk_color_b = 'cyan' config.disk_b = 'O' config.disk_w = 'O' config.progress = true end game = Reversi::Game.new game.start puts "black #{game.board.status[:black].size}" puts "white #{game.board.status[:white].size}" これを実行すると... 対戦が開始されます。 ソースコードへのリンク先のREADMEで実際に動いてる様子を見ることができます。 実行前の設定 Reversi.configure にデモの例の様にブロックを渡すことで各種設定を行います。 変更が無い限り、

    【Ruby】リバーシのプログラムを書いたりするためのgemをつくった - Qiita
    kattton
    kattton 2015/12/09
    ふぁー大変だなあこれ
  • リバーシの作りかた – 2dgames.jp

    1.はじめに 今回はリバーシの作り方を解説します。 リバーシは、プログラム初心者でも簡単に作れるわりに、盤面の扱い・CPUの思考ルーチンなどにこだわれば、凝ったプログラムができる、なかなか面白い題材です。 2.盤面の設計 まず、リバーシの盤面の設計をします。クラス図としてはこんな感じです。 石であるStoneクラスを見てみます。属性としては、とりあえず「色」の属性があれば充分です。(サンプルのように、ひっくり返した場合に飛び跳ねるような処理を行いたい場合には、座標の情報などが必要になります) 他に、スタティックな属性として、 BLACK NONE WHITE WALL というものを持っています。 ポイントは、BLACKが「-1」でWHITE「1」となっているところです。これは、reverseメソッドなどで石を反転させる場合、-1をかけるだけでよいため、このようにしています。 もう一つのポイ

    リバーシの作りかた – 2dgames.jp