アルゴリズム

7/8ページ

[Python] 挿入ソートの実装方法とアルゴリズム

Pythonと選択ソート Pythonで挿入ソートを実装してみます。Python3.6を使います。 挿入ソートは、時間計算量 O(n^2) でバブルソートや選択ソートと同じく高速なソートアルゴリズムとは言えません。ただし、挿入ソートについて言えばある面で有用なソートアルゴリズムです。 挿入ソートは要素数の少ないデータに対して、高速に動作する可能性があります。これはクイックソートなど高速なソートアル […]

[Python] バブルソートの実装方法とアルゴリズム

Pythonとバブルソート Pythonをはじめました。いろいろと勉強がてら実装してみます。ここではソートアルゴリズムの最も初歩的なバブルソートを実装します。 Pythonには2系と3系がありますが、Python3.6を使って実装しました。 # バブルソート def bubble_sort(array): n = len(array) for i in range(n-1): for j in r […]

C#

[C#][VB] 文字列をBase64形式にエンコード・デコードする方法

文字列をBase64形式にエンコード・デコードする方法 C#ないしVB.NETで文字列をBase64形式に変換するには、一度文字列をByte型配列に変換しそれをBase64文字列に変換します。Base64形式の文字列をもとの文字列に戻すには、その逆方向に実行します。 ただし、文字列をByte型配列に変換する際には、文字コードを意識しなければなりません。以下の例ではUTF-8でエンコード・デコードし […]

C#

[C#] モンテカルロ法で円周率πを求める

モンテカルロ法とは モンテカルロ法 とは、乱数を使っていろいろ計算してみよう、みたいなことです。詳しくはWikipediaをご覧下さい。 モンテカルロ法のアルゴリズムを使って、円周率πを計算してみます。 円周率πのを求める考え方 1辺が1の正方形を用意します。 そこに半径1の円の1/4を書きます。 正方形の内側にランダムに1点選び、円の内側かどうかを判定します。 3の処理をn回繰り返します。 円の […]

C#

[C#] Xorshiftの実装

XorShiftとは 疑似乱数生成方法の一つにXorshiftというものがあります。 wikipediaによると、Xorshiftとは、演算が排他的論理和とビットシフトのみであるため高速である、という特徴があります。 Xorshiftによる乱数生成をC#で書いてみました。 C#の実装例 public class Xorshift { // 内部メモリ private UInt32 x; priva […]

C#

[C#] UnixTimeを変換する方法

C# で UnixTime を変換する方法 UnixTimeとは、1970年1月1日からの経過秒数で表される日付の形式です。文字通りUnix系のOSで使われる表現方法でもあります。 .NET4.6以降では、標準での変換方法が提供されていますが、それ以前では変換関数を用意する必要があります。 DateTime型からUnixTimeへの変換とその逆の変換について、サンプルを以下に示します。 .NET […]

1 7 8