by javinpaul
データ構造とアルゴリズムは、プログラマにとって仕事を得るためにも仕事でうまくやるためにも最も必須のトピックの1つです。 データ構造とアルゴリズムの優れた知識は、優れたコードを書くための基礎となります。
If you are familiar with essential data structures e.g. array, string, linked list, tree, map, and advanced data structures like tries, and self-balanced trees like AVL trees, etc.。
配列、リンクリスト、ハッシュテーブルを自分で書く必要はないとはいえ、すべての主要なプログラミング SDK がそれらを提供しています (例: C:³³³³³)。 7007>
正しいデータ構造を使用すると、アルゴリズムのパフォーマンスを劇的に向上させることができます。 私を含め、ほとんどのプログラマーは、コンピュータ サイエンスのコースでデータ構造を紹介されるだけで、その実世界での重要性をあまり学んでおらず、そのために理解が深まりませんでした。
私たちにとって、それらはアルゴリズムやデータ構造など何らかの概念であり、良いプログラムを書くために使用できる道具ではありません。 Facebook が私たちの詳細を保存するためにそれらを使用することも、Google が Web ページを保存し、検索クエリにリンクするためにそれらを使用することも知りませんでした。
Anyway, it’s never too late.
もしあなたが自分のデータ構造知識が水準に達していないと考えているなら、あるいは自分のデータ構造知識を改善したいと思っているなら、あなたは正しい場所に来たのです。
Early, I shared some free books to learn data structures and algorithms, and this article, you will learn some of the best data structure and algorithm courses that are available for free online.
Free Courses to Learn Data Structures and Algorithms
Here are my list of some of the best courses to learn data structures and algorithms, which are also free.この記事では、無料で使える、最高のコースについて説明します。 多くのプログラマーは、無料のリソースは良くないと考えていますが、それは間違いです。
有料リソースの質や範囲には及ばないこともありますが、実際、これらのリソースは始めるのに最も適したリソースです。
これらのコースのいくつかは、面接の観点から特に優れているので、プログラミングの就職面接の準備に使用している本と一緒に使用することができます。
このコースで学ぶデータ構造には、Cプログラミング言語を使用したStack、Queue、Linked Listがあります。
このコースの主な目標は、学生やソフトウェアエンジニアに、異なるデータ構造がどのように機能するかを視覚化させることです。
This is not a exhaustive course, but you learn about Stack, Queue, and Linked List.これは、完全なコースではありませんが、このコースではStack, Queue, Linked Listについて学びます。
つまり、データ構造を初めて学ぶプログラマーや、プログラミング言語を学んだばかりでデータ構造の仕組みの基本を学びたい人に最適なコースです。
Course #2: Algorithms Part 1 – Coursera
このコースは、Coureraでアルゴリズムとデータ構造を扱う2部構成の前半部分で、Robert Sedgewickが担当しています。
このパートでは、リンクリスト、スタック、キュー、バイナリツリー、ハッシュテーブルなどの重要なデータ構造と、バイナリサーチ、クイックソート、マージソート、挿入ソートなどの検索とソートのアルゴリズムについて学習します。
また、日常のアプリケーションで使用されるコアデータ構造とアルゴリズムについて学び、トラバーサル、検索、更新アルゴリズムとともに各データ構造の選択に関わるトレードオフを理解する。
このコースのすべての機能は無料で利用できるが、修了証は提供されない。
Course #3: Algorithms – Part 2
このコースは、コンピュータサイエンスの教授であるRobert SedgewickとKevin Wayneによる、データ構造とアルゴリズムについて学ぶ2部構成の無料オンラインCourseraコースの第2部です。
Robert Sedgewickは、アルゴリズムについてJava開発者向けに最も人気がある書籍の1つ、Algorithms 4th edition本の著者でもあります。
このパートでは、グラフおよび文字列処理アルゴリズムについて学びます。
また、アプリケーション開発で使用される高度なデータ構造とアルゴリズムについても学びます。
Social proofについて話すと、アルゴリズム パート1およびアルゴリズム パート2はどちらも非常におすすめのコースで、素晴らしいレビューと評価があります。
コース番号4. Javaでデータ構造
これは、データ構造、アルゴリズム、および複雑さの分析に関する入門的なオンラインコースです。 Java言語を使った基本的なデータ構造の設計、実装、解析を学びます。
このコースの一番の特徴は、実践的な例が多く、数式や数学的証明ではなく、直感に重点を置いていることです。
このコースでは、「複雑さ解析」についての良い紹介をしており、実行する必要がない場合でも、パフォーマンスの悪い(そして素晴らしい)プログラムを発見することが可能になっています。 これらのコースを使用して、自分のペースでデータ構造とアルゴリズムを学ぶことができます。
これらはすべて包括的ではないかもしれませんが、良い導入となります。 これらのコースを一通り学んだら、「アルゴリズム入門」のような良書を選んで、さらに知識を補うことができます。 Easy to Advanced Data Structures
更新:このコースはもう無料ではありませんが、素晴らしいコースなので、あなたにとって価値があるかもしれません。 Udemyのこのデータ構造とアルゴリズムコースは、データ構造を基礎から応用まで学びたいすべての人のためのコースです。
このコースでは、データ構造に関する予備知識は必要ありませんが、Javaの基本的な予備知識があると役に立ちます。
著者の@William FisetはGoogleのソフトウェアエンジニアであり、元ACM-ICPCの世界最終候補者で、優れたコンピュータプログラミングと問題解決能力を持っています。
社会的証明について話すと、このコースには25K以上の学生がおり、683の評価から平均4.1評価を得ているのは印象的です。
要するに、データ構造について知っておくべきことをすべて学ぶための完全ガイドです。
これは、データ構造とアルゴリズムをインタビューの観点から学びたいコンピュータ科学の学生や働くソフトウェア専門家にとっても最適なコースと言えます。
そのため、Amazon、Google、Microsoft、Facebookなどの製品系企業への就職を目指す方は、このコースで準備を始めることができます。
Further Learning
- Data Structures and Algorithms.comでは、データ構造およびアルゴリズムについて学ぶことができます。 Deep Dive Using Java
- Data Structure and Algorithms – Part 1 and 2
- 10 Books to Prepare Technical Programming/Coding Job Interviews
- 10 Algorithm Books Every Programmer Should Read
- Top 5 Data Structure and Algorithm Books for Java Developers
- Data Structure and Algorithms Analysis – Job Interview
0 から 1まで: データ構造 & Algorithms in Java
Closing Notes
ありがとうございました。 記事の最後まで読んでくれたんですね。 プログラミングジャーニー、頑張ってください 確かに簡単ではありませんが、これらのコースに従うことで、他の人よりもデータ構造とアルゴリズムの習得に一歩近づきます。
この記事が気に入ったら、友人や同僚とシェアし、Twitterでjavinpaulをフォローするのを忘れないでください!