筆記試験アルゴリズムのクリアランス (Python 実装)

「アルゴリズムクリアへの道」の学習ノート、問題を磨く自分のプロセスを記録します。詳細な内容については、著者の本を購入してください。

私が普段最もよく使うプログラミング言語は Python です。このブログは、「アルゴリズム クリアへの道」のトピックとコードを学びながら記録するものです。コードには一部変更があり、すべての問題は leetcode からのもので、ほぼすべての内容をカバーしています。 leetcode の質問タイプと就職活動の筆記試験について説明します。

Chapter1 数学の美しさ

1-2 つの数値の合計、15-3 つの数値の合計、18-4 つの数値の合計、454-4 つの数値の合計 II、16-最も近い 3 つの数値の合計、53-最大部分列の合計、179-最大数 、166 -分数から小数へ、368 個の最大整数部分集合、1175 個の素数配列

Chapter2 回文の芸術

680-検証回文 II、234-回文リンク リスト、9-回文番号、5-最長回文サブストリング、516-最長回文サブシーケンス、906-スーパー回文番号

Chapter3 ゲームの楽しさ

38 出現配列、679 ~ 24 点、37 数独解、289 人生ゲーム

Chapter4 ディープサーチとワイドサーチ

113パス和II、2分木最大124パス和、島数200、島数II 305

第5章 二項対立

704-二分探索、153-回転ソート配列の最小値を見つける、875-バナナを食べるのが大好きなKe Ke、69-xの平方根、162-ピーク値を見つける、410-分割の最大値配列

第6章 ビット演算

191-1 の数、371-2 つの整数の合計、397-整数の置換、136-一度だけ現れる数字、137-一度だけ現れる数字 II、260-一度だけ現れる数字 III

Chapter7デザイン

最小スタック 155、インプリメント トライ (プレフィックス ツリー) 208、LRU キャッシュ 146、LFU キャッシュ 460、デザイン ジャンプ テーブル 1206

第8章 ダブルポインター

11 - 最も多くの水が入った容器、3 - 重複する文字を含まない最長の部分文字列

第9章 動的プログラミング

70の階段を上る、198の強盗の家、213の強盗の家II、62の異なる道、322の両替、518の両替II

Chapter10 スライディングウィンドウ

239 - スライディング ウィンドウの最大値、76 - カバーする部分文字列の最小値、424 - 置換後の最長の繰り返し文字、567 - 文字列の配置

Chapter11 ゲームの問題

877-ペブルゲーム、486-勝者を予測、292-ニムゲーム、375-数字を推測 II

Chapter12 在庫の質問

121-株式の売買に最適な時期、122-株式の売買に最適な時期 II、714-株式の売買に最適な時期には手数料が含まれます、309-株式の売買に最適な時期には凍結が含まれます期間、188 - 株の売買に最適な時期 IV、123 - 株の売買に最適な時期 III

第13章 分割統治

23-K の昇順リンク リストのマージ、215-K 配列内の最大要素、240-2 次元行列 II の検索

Chapter14 貪欲なメソッド

455 個のクッキー配布、55 個のジャンプ ゲーム、621 個のタスク スケジューラ、135 個のキャンディー配布、435 個の重複間隔なし

Chapter15 バックトラッキング方法

46 完全順列、47 完全順列 II、39 結合和、40 結合和 II、78 サブセット、90 サブセット II

まず穴を掘ってから、各問題タイプのテンプレートをまとめてください。問題やコードに疑問や異論がある学生は、連絡して修正することを歓迎します。

GitHub ノートブック

おすすめ

転載: blog.csdn.net/cjw838982809/article/details/131977837