2022.12.29

アルゴリズム(algorithm)

アルゴリズム

はじめに

アルゴリズムはプログラムを作成する基礎となる重要なもので、計算の方法、問題を解決するための手順や方法のことをいいます。

使用するアルゴリズムによって計算精度、処理速度、メモリの使用量などが違ってきます。

どのアルゴリズムを使うかは目的によって選択、または新たに作る必要があります。

代表的なアルゴリズムの種類

ソート(並び替え)アルゴリズム

データの格納を規則に従って並び替えるものです。データベースから検索した結果を指定の項目の順番に並べる処理にも使われています。代表的なものは、バブルソートクイックソート、ヒープソート、マージソート、選択ソート、挿入ソートです。

計算アルゴリズム

数値計算を行うためのアルゴリズムです。

素数判定法ユークリッドの互除法ニュートン法、モンテカルロ法など多くのアルゴリズムがあります

探索アルゴリズム

複数のデータの中から条件と一致したデータを見つけるものです。データベースの検索、検索エンジンなどで使われています。

代表的なものは、線形探索、二分探索、ハッシュチェイン法です。

暗号化アルゴリズム

データの暗号化、復元を規則に従って行うものです。データ通信、ファイルの暗号化、デジタル署名、仮想通貨など幅広く使われています。

代表的なものは、DES(Data Encryption Standard)AES(Advanced Encryption Standard)、RC4、RSA、ECC(Elliptic Curve Cipher)です。

関連コンテンツ

素数を判定するプログラムを作成してみませんか?興味のある方は、ご覧ください。

2016.02.01

反復によって数値計算を行うアルゴリズム、ニュートン法を解説しています。興味がある方は、記事をご覧ください。

2019.05.22

ユークリッドの互除法による最大公約数の求め方を解説しています。Javaのソース付きです。

2020.03.23

最も単純な探索アルゴリズム、リニアサーチをJavaのソースコードで解説しています。

2020.03.23

Javaの学習に役立つソースコードを多数紹介しています。是非、ご覧ください。

2022.09.10

Javaを使った簡単な応用プログラム(生年月日から年齢を計算プログラムなど)を紹介しています。

2022.07.07

画像フォーマット形式・色・大きさ・傾きなどの変更、特定の図形(文字・記号など)を見つけたり、取り出したりする画像処理について詳しく解説。

2015.11.29

数学に関係するJavaのメソッドやソースコードなどを紹介しています。

2022.10.25

プログラミング、ITに関する用語をまとめています。

2022.10.17

Javaのプログラムを作ってみませんか?プログラミングに必要なものの用意から実行までを説明しています。

2020.03.23

Swingパッケージを使ってグラフィック表示を行う方法を解説しています。

2020.03.23

繰り返し処理を使ったJavaのソースコードサンプルを紹介しています。

2020.03.23

配列を使うJavaソースコードを多数紹介しています。

2021.05.18

三角形、台形、円などいろいろな図形の面積を計算するプログラムを紹介しています。詳しくは、記事をご覧ください。

2021.05.18

StringクラスとStringBuilderクラスを利用したプログラミングの仕方を紹介しています。

2016.12.16

日本で使われてきた伝統文様「和柄」について解説しています。

2022.07.27

コンピュータは、いくつかの装置から構成されています。その主な5つの装置(機能)って何?

2022.07.10

ソート(並び替え)アルゴリズムの1つであるバブルソート(bubble sort)について詳しく解説しています。Javaのソースコード付きです。

2023.01.13

ソート(並び替え)アルゴリズムの1つであるクイックソートについて詳しく解説しています。Javaのソースコード付きです。

2019.09.06

配列に格納されている値を順番に並び替える方法を解説しています。

2019.03.11

基本的な計算である足し算(加法)/引き算(減法)/掛け算(乗法)/割り算(除法)を行うプログラム作成。

2020.03.23

ファイルは、データを取り扱うとき管理単位の一つで、ハードディスク、SSD,USBメモリ、CD/DVD/ブルーレイなどの記憶媒体に保存するときに使われます。詳しくは、記事をご覧ください。

2022.08.12

tan(タンジェント)の意味と、Math.tanメソッドの使い方を解説しています。

2020.03.23

「ゆるゆるプログラム」のコンテンツを紹介しています。興味のある方はこの記事をご覧ください。

2020.03.23

いろいろな模様(パターン)を描画する方法を紹介します。

2019.02.25

円を小さな台形に分割して、その面積の合計で円周率πを計算する方法を紹介しています。図とJavaのソースコードでくわしく説明しています。

2019.06.21

関数f(x)が与えられたときf(x)=0となるxを数値計算の反復によって求める方法を詳しく解説しています。

2019.05.22

数値微分を使ったニュートン法で平方根を計算する方法を紹介しています。興味のあるかたは是非ご覧ください。

2019.05.23

反復計算の回数の上限があるニュートン法の解法ソースコードを紹介しています。

2019.05.24

配列を使って素数を判定するプログラムを紹介しています。是非、ご覧ください。

2016.02.02

整数だけを使って平方根を計算する方法を説明しています。興味のある方は、記事をご覧ください。

2016.02.12

Math.sinメソッド、Math.cosメソッドを使わない計算方法を詳しく解説します。

2017.08.09

Javaには現在の時刻を取得する機能があります。この機能を使ってプログラム処理にかかる時間を測ったことありますか?

2015.12.16

広告