タグ

algorithmに関するitottoのブックマーク (9)

  • 【Unity】ソートアルゴリズム12種を可視化してみた - Qiita

    はじめに ソートアルゴリズムの学習として、12種のソートアルゴリズムを実装して可視化してみました。 Unityにはあまり関係がなさそうな話題ですが、Unity上で作ったのでUnityタグをつけます。 バブルソート バブルソートのアルゴリズムは以下のような感じです。 配列の要素を最初から最後まで見ていき、順序が逆の要素があれば入れ替える 全ての要素の順序が正しくなるまで 1.を繰り返す. void BubbleSort(int[] a) { bool isEnd = false; int finAdjust = 1; // 最終添え字の調整値 while (!isEnd) { bool loopSwap = false; for (int i = 0; i < a.Length - finAdjust; i++) { if (a[i] < a[i + 1]) { Swap(ref a[i],

    【Unity】ソートアルゴリズム12種を可視化してみた - Qiita
  • C#で使える遺伝的アルゴリズムライブラリ『GeneticSharp』

    だいぶ前からこれの真似をしてみたくて色々調べてるんだけど、そもそも遺伝的アルゴリズムの知識が無いのでピンとこない。↓ http://qiita.com/haminiku/items/a032d94e4f0d862df2b2 遺伝的アルゴリズムって、機械学習とは違うんですかね? 機械学習と同じように、遺伝的アルゴリズムも何か手軽なライブラリが無いかと探してみたら、C#で書かれたものを見つけた。↓ GeneticSharpは高速で拡張性があり、マルチプラットフォーム、マルチスレッドに対応したC#の遺伝的アルゴリズムライブラリです。GeneticSharpを使えば遺伝的アルゴリズム(GA)を使用したアプリケーションを手軽に開発することができます。 GeneticSharpは、ASP, .NET MVC, Web Forms, Windows Forms, GTK#, Unityといった様々な.N

    C#で使える遺伝的アルゴリズムライブラリ『GeneticSharp』
  • 遺伝的アルゴリズム - Wikipedia

    遺伝的アルゴリズム(いでんてきアルゴリズム、英語:genetic algorithm、略称:GA)とは、1975年にミシガン大学のジョン・H・ホランド(John Henry Holland)によって提案された近似解を探索するメタヒューリスティックアルゴリズムである。人工生命同様、偶然の要素でコンピューターの制御を左右する。4つの主要な進化的アルゴリズムの一つであり、その中でも最も一般的に使用されている。 遺伝的アルゴリズムはデータ(解の候補)を遺伝子で表現した「個体」を複数用意し、適応度の高い個体を優先的に選択して交叉・突然変異などの操作を繰り返しながら解を探索する。適応度は適応度関数によって与えられる。 この手法の利点は、評価関数の可微分性や単峰性などの知識がない場合であっても適用可能なことである。 必要とされる条件は評価関数の全順序性と、探索空間が位相(トポロジー)を持っていることであ

    遺伝的アルゴリズム - Wikipedia
  • C#でアルゴリズムとデータ構造1 ~最大部分配列問題~ - Qiita

    今日は最大部分配列問題(maximum-subarray problem)について。 最大部分配列問題とは 入力 要素数が1以上の1次元配列。 出力 入力の1次元配列の全ての部分配列(配列の一部をそのまま切り出したもの。要素の順序を並べ替えたり、一部の要素を取り除いたりしてはならない)の中で、部分配列のそれぞれの要素の値の総和が最大となるようなもの。 算法1 考え方 入力の1次元配列の全ての部分配列のそれぞれの要素の値の総和を計算し、総和が最大となるような部分配列を探し出せば良い。 全ての1次元配列の部分配列は、元の1次元配列と、左端の要素の番号と、右端の要素の番号から成る3つ組で表せる。たとえば、要素数が10の1次元配列Aの3つ目の要素から5つ目の要素までから成る部分配列は、正に、元の1次元配列と、左端の要素の番号である3と、右端の要素の番号である5から成る3つ組で表せる(これを、たとえ

    C#でアルゴリズムとデータ構造1 ~最大部分配列問題~ - Qiita
    itotto
    itotto 2017/12/08
    "分割統治法"
  • DPL_1_D:

    AIZU ONLINE JUDGE Japanese English For beginners HOME- DPL_1_D: The commentary is not available.

    DPL_1_D:
  • Common Subsequence 解説

    問題名:Common Subsequence (PKU) 出典:Southeastern Europe 2003 難易度:☆☆☆ 問題の種類:DP 解法:LCS (Longest Common Subsequence) 解答ソースコード: 1458-deq.cpp アルゴリズムの概略 DPの四天王(?),LCS (Longest Common Subsequence) そのままの問題です。 アジア地区予選など,通常はこれをひねった問題が出てきます。 LCSとは,二つの値の列(この問題では文字列)が与えられて,最長の共通部分列を見つける問題です。 部分列は連続している必要はありませんが,順序は変更してはいけません。 例えば X = "abcfbc", Y = "abfcab" であればLCSは "abfc" や "abcb" になります。 LCSは一般的に複数ありえますが,この問題ではその長

    Common Subsequence 解説
    itotto
    itotto 2017/12/08
    "Longest Common Subsequence"
  • アルゴリズムイントロダクション15章 動的計画法

    3. 動的計画法のアルゴリズム 最適解 の 構造 を 特徴 づける 最適解 の 値 を 再帰的 に 定義 する ボトムアップ に 最適解 の 値 を 求 める 最適解 を 構成 する

    アルゴリズムイントロダクション15章 動的計画法
  • エラトステネスの篩 - Wikipedia

    この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。 出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方) 出典検索?: "エラトステネスの篩" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL (2019年6月) エラトステネスの篩 (エラトステネスのふるい、英: Sieve of Eratosthenes) は、指定された整数以下の全ての素数を発見するための単純なアルゴリズムである。古代ギリシアの科学者、エラトステネスが考案したとされるため、この名がついている。

    エラトステネスの篩 - Wikipedia
  • Introduction to Information Retrieval

    This is the companion website for the following book. Christopher D. Manning, Prabhakar Raghavan and Hinrich Schütze, Introduction to Information Retrieval, Cambridge University Press. 2008. You can order this book at CUP, at your local bookstore or on the internet. The best search term to use is the ISBN: 0521865719. The book aims to provide a modern approach to information retrieval from a co

  • 1