プログラマーの間でデータ構造やアルゴリズムに関する知識が一般的に不足していることについてどう思いますか?

プログラマーの間でデータ構造やアルゴリズムに関する知識が一般的に不足していることについてどう思いますか?

多くのプログラマーの目には、データ構造やアルゴリズムなどは役に立たず、実際に使用されることもあまりないため、この種のコンテンツを無視する傾向があります。しかし、多くの企業、特に大企業の目には、データ構造とアルゴリズムは確かに最も有用であり、筆記試験や面接で頻繁に登場します。なぜこのようなことが起こるのでしょうか?

1. 最も退屈で基本的なものほど、寿命が長いことが多い

データ構造、アルゴリズム、コンピューターの原理に関する知識などは、プログラミングと実践の基礎となります。退屈で基本的なように見えるかもしれませんが、最も長い寿命を持っています。

さまざまなフレームワークやオープンソース ライブラリの使用に慣れているかもしれませんが、それで何になるのでしょうか? さまざまなフレームワークやオープンソース ライブラリのドキュメントを見ると、プログラミングの基礎さえあれば、それをコピーできない人がいるでしょうか?

フレームワークやライブラリについて毎日話さないでください。フレームワークは毎年登場しますが、フレームワークのクールで美しい外側の層を剥がすと、その中に最も基本的な知識と原則が見つかります。これらは、アルゴリズム、データ構造、コンピュータ ネットワーク、コンピュータの原理など、一見基本的なものです。これらをしっかりと把握して初めて、さらに先へ進むことができる可能性が生まれます。

基礎がしっかりしているプログラマーにとって、プログラミング言語やプログラミングフレームワークといった表面的なものを学習し、すぐに成長することは簡単です。これらの基礎と原則を理解すれば、このようなフレームワークを書くこともできるかもしれません。テクノロジーは急速に更新・反復され、言語は次々と登場しますが、データ構造、アルゴリズム、コンピューターの原理などは変わっていません。

2. データ構造とアルゴリズムは、面接中に定量化して能力を示すのが最も簡単です。

それはどういう意味ですか?面接や筆記試験で、データ構造やアルゴリズムについて質問することで、プログラミングにとって非常に重要な思考力や思考力をテストすることができます。たとえば、面接でフレームワークを使用したことがありますか?と聞かれたら、「はい、使用しました」と答え、次に、これらのフレームワークの使用に関する知識、遭遇した落とし穴、その解決方法などについて話します。このような質問では、あなたの思考力やプログラミング能力はわかりませんが、実際にこれを使用できるかどうかはわかります。 (http://godcoder.me/about/)

ただし、アルゴリズムやデータ構造に関する面接は異なります。面接では、それらを書き出したり、疑似コードを書いたりすることが許可されており、これらの能力があれば、成長の余地が大きく広がります。実践的なプログラミング能力を面接するときに、コンピュータの前に立ってモジュールの実装を書くように求めるのは無理ですよね? しかし、アルゴリズムとデータ構造を書くように求めるのは非常に便利で、定量化することもできます。皆さん、私のWeChat公開アカウントをフォローしてください:有名でないプログラマー

そのため、アルゴリズムやデータ構造は面接で非常によく聞かれる質問であるため、普段アルゴリズムやデータ構造を使用しない人でも、転職時に事前にアルゴリズムやデータ構造の知識を確認する人が多くいます。しかし、私は誰もが常にこの能力を持つべきであると依然として推奨しています。頻繁に使用されないからといって、これらの基本的なことを無視しないでください。これらが本質なのです。

現時点では、ほとんどのプログラマーはこのようなことに注意を払っていません。優秀なプログラマーはこういったことを非常に重視するので優秀です。優秀になりたいなら、分かるでしょう。

これは私が知乎で出した答えです。とても有意義だと感じたので、ここで皆さんと共有したいと思います。

<<:  人工知能+5G:時代はあなたに挨拶もせずに見捨てた?

>>:  水注入、ピット占拠、ナンセンス:機械学習の学術界における「疑似科学」

ブログ    
ブログ    
ブログ    
ブログ    
ブログ    

推薦する

Python コーディング面接の前に解くべき 10 個のアルゴリズム

アルゴリズムの練習がなぜ重要なのか?私が最初に問題を解き始めたときのように世間知らずにならないでくだ...

「機械による人代替」が雇用問題を引き起こす。第一線で働く人々の未来はどうなるのか?

人工知能技術の推進により、製造業の変革と高度化が進み、「機械が人に代わる」という波が起こり、その社会...

...

Cloud Pak for Data 3.0は、企業のコスト削減と効率性の向上を支援し、AI導入を加速します。

[[335519]]感染症流行後も実体経済は厳しい状況が続いている。生産停止、収益の急激な減少、資...

準備はできたか? GNN グラフ ニューラル ネットワーク 2021 年の主要なアプリケーション ホットスポット 5 つ

[[378224]]今年から始めます。グラフニューラルネットワークは研究者の間で話題になっており、こ...

大規模ナレッジグラフデータストレージの実践的分析

1. ナレッジグラフとは何ですか?現実世界にはさまざまなものが存在します。物事の間にはいくつかの種類...

...

Open Interpreterは、大規模な言語モデルのコードをローカルで実行できるようにするオープンソースツールです。

最近、Github を閲覧していたところ、Open Interpreter という魔法のツールを見つ...

2021年には、人工知能が私たちの生活にさらに統合されるでしょう。これは何を意味するのでしょうか?

[[375039]]人工知能の歴史は、アラン・チューリングがチューリングテストを発明した 1950...

ニューラルネットワークの詳細な説明、順方向伝播と逆方向伝播

主にロジスティック回帰について説明します。ロジスティック回帰には多くの基本概念が含まれており、ニュー...

...

方向を理解し、座標を伝える、Shikraはマルチモーダルな大規模モデル参照ダイアログの新しい次元を開きます

人間の日常的なコミュニケーションでは、場面内のさまざまな領域や物体に焦点が当てられることが多く、これ...

マイア:人間を模倣するが、人間を超えることはないチェスAI

[[378769]]海外メディアの報道によると、AIは長年にわたり、あらゆる古典的なボードゲームで...

2020年のIoTイベントトップ10を振り返る。アプリケーションの加速

今日では、それはもはや高尚な概念ではありません。スマートカーやスマートホームから、企業の資産管理機器...