アルゴリズム学習入門(一)

1248 ワード

アルゴリズム学習入門(一)
おすすめ書籍:《 : 》1つの分野に精通しています.
  • 知識点を切り刻む
  • わざと練習(五毒神掌、練習弱点)
  • フィードバック
  • アクティブフィードバック

  • データ構造
  • 1次元:
  • ベース:配列array(String)、チェーンテーブルlinked list
  • 高級:スタックスタックスタック、キューキューキュー、両端キューdeque、集合set、マッピングmap(hash or map)
  • 2次元:
  • 基礎:数tree,図graph
  • 高級:二叉探索樹binary search tree(red-black tree赤黒樹、AVL)、堆heep、そしてdisjoint set、辞書樹Trie
  • 特殊:
  • ビット演算Bitwise、ブロンフィルタBloomFilter
  • LRU Cacheキャッシュ

  • アルゴリズム#アルゴリズム#
  • if-else,switch -->branch
  • for,while loop—>iteration
  • 再帰Recursion(Divide&Conquer,Backtrace)
  • 探索Search:深さ優先探索(Depth first search)、広さ優先探索(Breadth first search)
  • 動的計画Dynamic Programming
  • 二分検索Binary Search
  • 欲張りアルゴリズムGreedy
  • 数学Math、幾何学Geometry
  • 注意: ( )四つ切りにする
  • 出題が明確
  • 可能な解法を考え出す
  • 比較、補強
  • 多書き
  • テスト
  • 五毒神掌
    問題を1回目に書き直す.
  • 5分:読題+思考
  • 直接見て解法:注意!多解法、比較解法の優劣.
  • 解法.

  • 2回目の問題を書く.
  • すぐ自分で書くー>LeetCode提出
  • いろいろな解法を比較して、体得します-->最適化!

  • 3回目の問題を書く
  • 1日後、原題を繰り返す.
  • 解法別熟練度—>特別練習
  • 4回目の問題を書く
  • 1ヶ月後、原題を繰り返す.

  • 5回目の問題を書く
  • 面接前週のリハビリ