コンピューターを研究するすべての大学生にとって、最も難しいのはデータ構造とアルゴリズムを学ぶことです。
データ構造とアルゴリズムが非常に重要であることは明らかですが、それを学ばなければ、言及するときにそれは大きくなります。
あなたがこのような人かどうかはわかりませんが、とにかく、私はこのようでした。私が知る限り、ほとんどのプログラマーはこのような人のようです。
私たちが最初に大学を始めたとき、データ構造とアルゴリズムを学ぶことは本当に困難でしたか?賢い人でも、学ぶのは少し難しいかもしれませんが、大学生のときにデータ構造とアルゴリズムがうまくいかない理由は、おおよそ2つあると思います。
- 当時の知識は狭すぎて勉強も厳しかったので、いろいろな補助教材などの見つけ方がわからなかったので、自分では難しいと思いました。
- ほとんどの教師は本に従って説明するだけで、何かを教えたり、共有したりすることを知りません...
このようにして、大学時代に誤ってデータ構造とアルゴリズムを忘れることはありませんでした。もちろん、十分に学んだ人が不足することはありません。彼らが人生のピークに達し、白フメイを獲得したと想像してみてください...
実際、データ構造とアルゴリズムは確かに難しいのですが、私たちが一生懸命に働き、学習と練習に多くの時間を費やしている限り、データ構造とアルゴリズムの学習は問題になりません。もちろん、これらを追加した場合ウェブサイトの祝福、それからあなたはより学習に慣れるでしょう
アルゴリズムを学ぶためのウェブサイト
まず、すべての学習データ構造とアルゴリズムにアクセスする必要があるWebサイトがあります。言うとわかるでしょう。それは、有名なLeetCodeです。https://leetcode.com/
このウェブサイトは実際には牛のカップなので、「パワーバックル」の中国語版の中国語版ができました。https://leetcode.com/を開くと、偶然にここに自動的にジャンプします。
中国語版は次のようになります:クリックして探索して表示します
ここに画像の説明を挿入
強い男!嘘をつくな!
それらの可視化サイト
以下は、データ構造とアルゴリズムの学習の過程で知っておくべきいくつかの視覚化Webサイトです。それはどういう意味ですか?データ構造とアルゴリズムを研究する場合、データ構造とアルゴリズムがより難しいのは、アルゴリズムは比較的抽象的であり、理解するのが難しいため、データ構造とアルゴリズムを理解するための最良の方法の1つは、実際の使用法を確認することです。この時点で、以下のビジュアルアニメーションを通じて理解を深めることができます。 Webサイトは、データ構造と計算を直観的に観察できる視覚的なWebサイトです。
データ構造の可視化
直接リンク:データ構造の視覚化
次のようになります。
一部の人々は、彼らが理解していないと言っても大丈夫です。
機能しないと言う人もいるかもしれないので、二分探索ツリーのような簡単なデモンストレーションを紹介します。
ぜひお試しいただき、お早めにご利用ください!
visualgo
直接リンク:https://visualgo.net/zh
ここに画像の説明を挿入
ハートビートを見て?引き続き操作を確認します。
ここに画像の説明を挿入
ぜひお試しください!
BinaryTreeGraph
直接リンク:
これは主にバランスツリーの視覚的な操作です。私はこのWebサイトをよく使用します。本当に良いです。バイナリツリーを印刷する対応するオープンソースプロジェクトもあります。興味がある場合は、https://github.comを参照してください。 / CoderMJLee / BinaryTrees
BinaryTreeVisualiser
直接リンク:http://btv.melezinek.cz/home.html
ここに画像の説明を挿入
これは主にバイナリツリーに関連しています。たとえば、バイナリサーチツリーは次のように表示されます。
操作はとてもシンプルで、お試しいただけます!
btree-js
直接リンク:https://yangez.github.io/btree-js/
これは、Bツリーの特別なデモンストレーションです。
アルゴリズムビジュアライザー
直接リンク:https://algorithm-visualizer.org/
これは私がもっと好きなものですこれは牛のカップの男です。
それは非常にプロフェッショナルに見えますか、ハハ、それを翻訳して見てください:
ご覧のとおり、これは主にアルゴリズムの視覚化Webサイトであり、主にさまざまなアルゴリズムを説明していますが、それは本当に素晴らしいですが、コードをサポートし、javaなどのjs、java、c ++があります
次に、関連するJavaコードが右側に表示されます。
次に、ここをクリックして実行します。
あなたが強いかどうか尋ねてください、すぐに試してください!
アルゴリズム分析関連のウェブサイト
Bigocheatsheet
直接リンク:https://www.bigocheatsheet.com/
この写真をあなたに与えるだけで、あなたはそれが何のためにあるかを知っているべきです、急いで行くのは役に立ちます、それは本当に、本当に...
続けて...
アルゴリズム-DataStructures-BigONotation
直接リンク:http://cooervo.github.io/Algorithms-DataStructures-BigONotation/index.html
これは、アルゴリズム分析を表示できるWebサイトでもありますが、これ以外のものもあります。
これはあなた自身を探索して発掘することを要求します!
小さな卵
データ構造とアルゴリズムに不慣れな私たちの小さな友人の多くは、最初は混乱します。この大きな0表記は重要です。ここでは、スタックオーバーフローに関する一般的な回答を示します。これは非常に優れています。お勧めします。
https://stackoverflow.com/questions/487258/what-is-a-plain-english-explanation-of-big-o-notation
読んでいただきありがとうございます〜
推奨読書:Alibaba P7テクニカルエキスパートトーク:1〜5年働いたJavaエンジニア、コア競争力を向上させる方法
2年間のハードワークの後、私はついにTencentに入りました(PCGビジネスグループの4つの側面の要約)