データ構造とアルゴリズム[10]アルゴリズムは、世界を支配します

序文

あなたは、アルゴリズムを理解していれば、この記事を読んだとき、あなたは「アルゴリズムがそれをした理由を著者らは知っていますか?」それとも求めることができる「やるFacebookの 『情報の流れ』(ニュースフィード)は、アルゴリズムとみなすこと?」、「メッセージ場合流れ「アルゴリズムであり、我々はすべてがアルゴリズムに沸く置くことができます。エッセイポストと組み合わせCaishuxueqianは、その後、私はアルゴリズムが何であるかを説明しようとするだけでなく、私たちの世界をリードしているもののアルゴリズム。

アルゴリズムとは何ですか?

要するに、任意の明確に定義されたアルゴリズムの計算ステップを呼び出すことができ、または、一つまたはグループの出力値を入力値のセットを受け入れます。(出典:homas H. Cormen、Chales E. Leiserson "アルゴリズム第3版の概要" を参照)

このアルゴリズムは、(ちょうど私たちも日常生活の中でアルゴリズムを使用して、コンピュータアルゴリズムを必要としない)特定の問題を解決するための一連のステップである、理解することができます。このアルゴリズムは、次の3つの重要な機能を持っている必要があります。

  • 有限数のステップを実行した後、アルゴリズムが中断されなければならない、貧しい人々の抵抗を持っています。
  • アルゴリズムの各ステップの正確な性質は、正確に定義する必要があります。
  • 実現可能性は、なるように特定のアルゴリズムは、特定の期間内に特定の問題を解決することができます。

実際には、アルゴリズムは、広くコンピュータの分野で使用されているが、しかし、完全に数学から。実際には、バックファクタリングおよび平方根を求めるについて数学的アルゴリズムのアルゴリズム1600 BC -Babyloniansに早いさかのぼります。

それでは、今日私たちが住んでいる10コンピュータアルゴリズムを作成していますか?アルファベット順に、以下のフォームを見てください:

マージソート(SORTをMERGE)、クイックソート(クイックソート)とバルク発注(ヒープソート)
ここに画像を挿入説明
最高ランキングアルゴリズムの効率のですか?これは、状況によって異なります。これは私が一緒に話を3つのアルゴリズムを置く理由は、あなたがより一般的なものであってもよいですが、彼らは異なっています。

ソートアルゴリズムをマージ、それは、これまでで最も重要なアルゴリズムの一つである除算の典型的なアプリケーションであり、ジョン・フォン・ノイマンが1945年に発明した数学者によって征服します。

集合分割アルゴリズムと分割を組み合わせたアルゴリズムを征服高速ソーティングアルゴリズムは非常に安定ではなく、ランダムな配列を扱う場合(AM系配列)効率が非常に高いです。

ソートの蓄積、プライオリティキューメカニズムがソート減らすために、検索時間の使用は、同じことが非常に安定していません。

以前のソートアルゴリズム(例えば、アルゴリズムバブリング)と比較して、ソートアルゴリズムのアルゴリズムは、より高いレベルに置きます。また、これらのアルゴリズムのおかげで、それが今日のデータマイニング、人工知能、リンク解析、およびツールを計算するほとんどのページです。

フーリエ変換と高速フーリエ変換
ここに画像を挿入説明
の両方のアルゴリズムは簡単ですが、非常に強力な、全体のデジタル世界は彼らなしで行うことはできませんが、その機能は、周波数領域および時間領域の関数functionとの相互変換を実現することです。この記事を読むことができ、また、これらのアルゴリズムの祝福を尋ねました。

インターネット、WIFI、インテリジェントなマシン、固定電話、コンピュータ、ルータ、衛星などほとんどすべてのコンピュータ関連機器は、多かれ少なかれ、それらに関連しています。どちらのアルゴリズムは、あなたは、単にエレクトロニクス、コンピュータ工学や通信の学位を得ることができない、ではありません。(USA)

ダイクストラ(Dijkstraのアルゴリズム)は、
ここに画像を挿入説明
そのようなアルゴリズム、インターネットは確かにいない今、高効率が存在しない場合は、と言うことができます。限り問題は、「マップ」のモデルで表現することができるよう、あなたは、このアルゴリズムを使用して2つのノードの「マップ」との間の最短距離を見つけることができます。

最近は最短経路問題を解決するために多くのより良い方法がありますが、安定性に代わっケシ佗アルゴリズムは、まだ交換することはできませんが。

RSA非対称暗号化アルゴリズムは、
このアルゴリズムの寄与せず、鍵が学習し、ネットワークセキュリティすることであり、今のインターネットの状況はそれほど高くないかもしれないと言っても過言ではありません。今、ネットワークセキュリティのは意味ありませんが、私たちは、あなたが安全でないネットワークを感じる場合はWeb上で自分の銀行カード情報を入力する確かに愚かではない、十分なセキュリティを確保する必要がありますお金に関連する問題。

RSAアルゴリズム、ほとんどの牛のフォークアルゴリズムのキーフィールドの一つは、会社RSAの3人の創設者が提案し、今日は研究の主要分野を築きました。シンプルかつ複雑な問題を解決するには、このアルゴリズムでは:例安全性を確保するために、どのようにユーザーとプラットフォームに依存しない間に鍵を共有することができます。

セキュリティハッシュアルゴリズムは、(セキュアハッシュアルゴリズム)
むしろ、これは、アルゴリズムが、最初に米国国立標準技術研究所によって提案された暗号ハッシュ関数の集合、ではありません。など、あなたのアプリケーションストア、電子メールおよびアンチウイルスソフトウェア、またはブラウザ、かどうかは、あなたの通常のダウンロードを確保するために、このアルゴリズムを使用し、「中間者攻撃」、またはかどうか「フィッシング」。

整数质因子分解算法(Integer factorization)
这其实是一个数学算法,不过已经广泛应用与计算机领域。如果没有这个算法,加密信息也不会如此安全。通过一系列步骤将,它可以将一个合成数分解成不可再分的数因子。

很多加密协议都采用了这个算法,就比如刚提到的RSA算法。

链接分析算法(Link Analysis)
ここに画像を挿入説明

在因特网时代,不同入口间关系的分析至关重要。从搜索引擎和社交网站,到市场分析工具,都在不遗余力地寻找因特网的正真构造。

链接分析算法一直是这个领域最让人费解的算法之一,实现方式不一,而且其本身的特性让每个实现方式的算法发生异化,不过基本原理却很相似。

链接分析算法的机制其实很简单:你可以用矩阵表示一幅“图“,形成本征值问题。本征值问题可以帮助你分析这个“图”的结构,以及每个节点的权重。这个算法于1976年由Gabriel Pinski和Francis Narin提出。

谁会用这个算法呢?Google的网页排名,Facebook向你发送信息流时(所以信息流不是算法,而是算法的结果),Google+和Facebook的好友推荐功能,LinkedIn的工作推荐,Youtube的视频推荐,等等。

普遍认为Google是首先使用这类算法的机构,不过其实早在1996年(Google 问世2年前)李彦宏就创建的“RankDex”小型搜索引擎就使用了这个思路。而Hyper Search搜索算法建立者马西莫·马奇奥里也曾使用过类似的算法。这两个人都后来都成为了Google历史上的传奇人物。

比例微积分算法(Proportional Integral Derivative Algorithm)
ここに画像を挿入説明

飞机,汽车,电视,手机,卫星,工厂和机器人等等事物中都有这个算法的身影。

简单来讲,这个算法主要是通过“控制回路反馈机制”,减小预设输出信号与真实输出信号间的误差。只要需要信号处理,或电子系统来控制自动化机械,液压和加热系统,都需要用到这个算个法。

没有它,就没有现代文明。

データ圧縮アルゴリズムは
最適な、多くのアルゴリズムがありますが、データを圧縮しますか?これは、アプリケーション、圧縮されたMP3、JPEGの方向に依存し、MPEG-2ファイルは同じではありません。

どこでそれらを見ることができますか?単なるフォルダ以下のファイルを圧縮。あなたは、このWebページを見ているあなたのコンピュータに情報をダウンロードするには、データ圧縮アルゴリズムを使用することです。その上のテキスト、ゲーム、ビデオ、音楽、データストレージ、クラウド・コンピューティングとに加えています。これは、より簡単に、より効率的なシステムのさまざまなことができます。

乱数生成アルゴリズム
ここに画像を挿入説明
今までは、コンピュータが「本当にポジティブ」乱数を生成する方法がありませんが、擬似乱数生成アルゴリズムで十分です。これらのアルゴリズムは、このようなネットワークアクセス、暗号化、セキュアハッシュアルゴリズム、オンラインゲーム、人工知能、および条件の初期化の問題分析など多くの分野での用途を有します。

おすすめ

転載: blog.csdn.net/Java__xiaoze/article/details/90696728