長い冬眠の後、データ構造のスキルを上げる方法[終了]


10

アルゴリズムとデータ構造には、かなり昔はかなり良かったです。それ以来、私はプロのプログラムを作成し、小さなチームの管理に行きました。このチームは、この分野の技術スキルを完全に打ち消しました。

再び開発者になり、Googleで働きたいと思っています。実は、私はとても練習していないので、もし今面接を受けられたら、きっと10分で失敗するでしょう。

元に戻すには、どのトレーニングプログラムをお勧めしますか?私は今週末、絶対的な基本に戻り、いくつかのソートアルゴリズム、リンクリスト、ハッシュテーブルを実装することから始めました。次に、他の基本的なデータ構造とグラフアルゴリズムについてのコース資料全体を読んでいきます。古い脳細胞を操作するために、比較的短時間で実行できる集中的な実践的なエクササイズを見つけたいと思っています。私はこのことを知っています-私はそれを知っていることを思い出す必要があります。


@アノン:これがGoogleが新しい年に自分自身についての話題を生み出す新しい方法である場合、私が言いたいことが1つあります。できます。
Fanatic23

4
データ構造が休止状態だった場合、それらはおそらくシリアル化されていました。それらをシリアル化解除する必要があるだけです。
Mchl

4
@Mchl-Anonについては知りませんが、「頭脳」の記憶媒体はフロッピーディスクよりも長期的には信頼性が低いことがわかりました。数年以上前にシリアル化されたものは、ほぼ間違いなく現在までに破損しています。
Steve314、2011年

回答:


6

伝えたいことが4つあります。それらを伝えるために必要な順序をリストアップしました。

  1. あなたがこれにいる間にあなた自身の緑茶の源を手に入れてください
  2. その緑茶をすすりながら、ここから入手できるスキーナの本を読んでくださいここでオーディオ/ビデオの資料を確認してください
  3. http://code.google.com/edu/courses.htmlで、Googleが管理する優れたリンクのセットを確認してください。
  4. SOでアルゴリズム関連の質問に答え、自分で答えてみてください

がんばって!


私はスキーナの本が好きですが、オーディオ/ビデオの素材があることを知りませんでした。
2013年

1

私が実際に使用している実際のデータ構造またはファイル形式を選択し、それを使って何かクールなことをすることをお勧めします。Gitファイル形式は、たとえば次のようにかなり文書化されています。

http://book.git-scm.com/1_the_git_object_model.html

人々が使用する形式で面白いことをし、それについて厳格であることは、教訓を教えます-そして-あなたが人々が興味を持つであろう何かを与えます。

または、少なくとも、独自の角度で何かを作ります。私があなたと同じような立場にあったときに、サイクルの挿入を検出できる一方向グラフを作成することについてのオンラインインタビューの質問に対する回答を書きました。余分な制約を追加していなければ、それは簡単な問題でした...しかし、O(1)に挿入できることを要求することにしました。結果はNoCycleでした:

http://hostilefork.com/nocycle/


1

これは、あなたの目標が正確に何であるかに依存します-たとえば、アルゴリズムの設計と分析はそこにありますか、それとも標準の構造とアルゴリズムにこだわっていますか?しかし、私には、必要なことをすでに実行しているように聞こえます。

「ずっと昔」の古いお気に入りのテキストブックがまだある場合は、再考することをお勧めします。それを超えて、それは標準的な再訪何でもアドバイスです。特定の質問を自問して、答えを探してください。質問が不足したら、スキムを見つけて、より具体的な質問ができるまで、見つけたものをすばやく参照してください。

アルゴリズムとデータ構造(Niklaus Wirth)は、すべてのアルゴリズムの設計と分析を行わずに、基本的なアルゴリズムとデータ構造に関する比較的簡潔な本です。ただし、リスト、さまざまなツリー、ヒープなど、非常に基本的なものですが、たとえばダイグラフについては覚えていません。1つの利点は、Oberonバージョンの無料ダウンロードがあることです-http ://www.inf.ethz.ch/personal/wirth/-書籍リストの下部近くにあるPDFリンクを探してください。ウィキペディアは明らかなリソースですが、そこに行く前に、何を望み、何を望まないかを決めるのは良い考えです。


0

アルゴリズムとデータ構造にかなり慣れていたら、どのリソースにアクセスしましたか?

知識を磨くために必要な「比較的短い時間」はどれくらい短いですか?

献身によって得られた知識が消えることはないと思います。それはほんの少し消えていくだけで、あなたはかつて愛していた主題であなたの古い能力を取り戻すために取り組む必要がある分野の最も良い裁判官です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.