概要 ツリーはデータを階層的に扱うデータ構造です。各ノードの子ノードが最大二つしか存在しないことが保証されているツリーを特に二分木とよびます。データ構造である二分木に新たな要素ノードを追加する際の規則を工夫することで、要素の検索を二分探索で実行できるようになります。この場合の二分木を特に二分探索木とよびます。二分探索木に対し、ソートされた要素を順番に追加すると性能が極端に悪くなってしまいます。こ
概要 変数のサイズを表現するための整数型。真偽値をbool型変数で扱うように、データサイズを格納する変数はsize_t型にすると何のために変数なのかが分かりやすくなる。 sample.cpp #include <iostream> using namespace std; int main() { size_t size = sizeof(int); cout << size
概要 Qt Quick は、こちらのページで記載した Qt フレームワークにおいて UI 作成のために利用されるライブラリです。Qt Quick で利用される言語 QML (Qt Modeling Language) について、基本的な使い方を記載します。 検証用のコード sample.py #!/usr/bin/python # -*- coding: utf-8 -*- from sy
概要 TODO
概要 SSH-agent はこちらのページに記載しましたように秘密鍵のパスワード入力を省略する目的で使用することができます。実はそれだけではなく、やはりこちらのページで紹介した SSH config による多段ログインに相当する機能も提供しています。これを特に SSH エージェントフォワードとよびます。 ログイン実験
概要 一般にある問題を解くためのアルゴリズムは複数存在します。このアルゴリズム (Strategy) 部分をinterfaceで要請した形式に合わせて実装し、委譲を用いて分離することで状況に応じて切り替えて使用できるようにします。切り替え可能なアルゴリズム以外の部分は、委譲でアルゴリズムを利用する側に実装します。また、Mainから直接Strategyを利用することは避けましょう。
概要 主成分分析 PCA (Principal Component Analysis) を利用すると、多次元のデータから興味のある特徴のみを抽出して、より低次元のデータに変換できる可能性があります。PCA の応用例の一つとして、物体の方向検出があります。画像をグレースケールに変換して物体の輪郭を検出した後に、輪郭を形成する各点を x座標、y座標を持つ二次元データとみなします。この二次元データに対
概要 Rails4には他のフレームワーク同様、CRUD (Create, Read, Update, Delete) を行うアプリケーションの骨組みとなるファイル一式を自動で出力するScaffolding機能があります。 事前準備 rails new myApp としてアプリケーションを作成しておきます。そうではなく、既存のアプリケーションを利用する場合でかつ下記Scaffolding機
概要 ファイルシステムまたはデータベースのどちらに保存するかによって、二通りの方法に大別できます。 ファイルシステムに保存する場合 app/views/main/index.html.erb <%= form_tag({action: :upload_process}, multipart: true) do %> <%= file_field_tag :upfile %> <%=
概要 試作や学習の目的でブレッドボードやユニバーサル基板を用いた電子工作をしていると、ある時ふと、プリント基板に挑戦してみたくなることがあります。『電子工作のエッセンス』にそのための非常に分かりやすい解説ページが存在します。 ところで、上記サイト名から、高校の物理で有名な『物理のエッセンス』を連想される方も多いのではないかと思います。電子工作は高校物理の知識があるとより楽しめると思います。復習