GAFAなどのテック企業インタビュー対策LeetCode対策まとめ(その1):データストラクチャ編

最近いくつかLeetCodeの問題を解いてみてわかったことは、各問題ごとにそれぞれカバーしてあるコンセプトなり、アルゴリズムがありやはりそれを少し勉強しながら解いて行ったほうが要領がいいかもしれないと思い始めた。

キーとなるデータストラクチャ

単にリストだけでなく、リンクドリスト、ツリー、グラフなど特殊なデータストラクチャのオブジェクトもでてくるので、それらをきちんと把握することが問題を把握する上でキーになる!

LeetCode対策用のブログ

によるとそれは、

Dynamic Array
Linked List
Stack & Queue
Hash Tables
Binary Search Tree
Binary Heaps & Priority Queue
Graphs
Tree

である。対策のために良さそうなサイトをリンクしておいた。

このセレクションはもう一つの対策サイトでも

LinkedList
Stack
Heap, PriorityQueue
HashMap
Graph, BFS, DFS
Tree, BT, BST
Sort
Dynamic Programming
Binary search
Recursion
Sliding window
Greedy + Backtracking

とあるので、だいたいOKそうである。

関連するLeetCode Easy問題

理解を深める方策の第一歩として、LeetCodeの問題のうち各コンセプトに関係する問題でEasyのものをピックアップすることにした。

LikedList

remove-duplicates-from-sorted-list

Stack

valid-parentheses

reverse-linked-list

Heap and Priority Queue

kth-largest-element-in-a-stream

Hash Map

two-sum

intersection-of-two-arrays

unique-email-addresses

first-unique-character-in-a-string

Tree, BT,BST

maximum-depth-of-binary-tree

minimum-depth-of-binary-tree

merge-two-binary-trees

convert-sorted-array-to-binary-search-tree

path-sum

Dynamic Programing

house-robber

best-time-to-buy-and-sell-stock

best-time-to-buy-and-sell-stock-ii

Binary Search

search-insert-position

総合問題

move-zeroes

is-subsequence

とまずはこの辺りから攻めるのがいいのかもしれない。

Easy問題でカバーされていないコンセプト

Graph, Recursion, Greedy + Backtrading(Permuation, Subsetsなど)、各種Sort

あたりが気になります。

あとこうしたコースも面白いですね。

このコースだいたいのデーターストラクチャ&アルゴリズムのレクチャーのほか、ジョブインタビューの対策、給料交渉のやり方まで入っていて非常に興味深いです

気になるレクチャーの内容は

画像1

なのでだいたいカバーされているみたいですね。

今なら$9.99(2020年1月9日まで)なので非常にお得かもです。。

あとこれは無料みたいですが

それからGithubのハンズオンコースもよさげです。


この記事が気に入ったらサポートをしてみませんか?