OpenCourse: Programming Abstractions / Stanford

2009年9月 1日

Stanford School of Engineering - Stanford Engineering Everywhere

「Programming Abstractions」コースはスタンフォード大学が公開している講座です。「Programming Methodology」コースの上級版にあたります。C++言語を用いて、再帰的呼び出し、解析アルゴリズム、抽象化、スタックやキューなどの基本的なデータ構造などを学習します。

コースの詳しい内容やハンドアウトなどの関連資料は、「Stanford School of Engineering - Stanford Engineering Everywhere」のページから参照できます。

Lecture 1 | Programming Abstractions Lecture 1 | Programming Abstractions - YouTube
About the CS106 Series at Stanford
Lecture 2 | Programming Abstractions Lecture 2 | Programming Abstractions - YouTube
Similarity between C++ & Java: - syntax - variable types - operators - control structures
Lecture 3 | Programming Abstractions Lecture 3 | Programming Abstractions - YouTube
C++ Libraries - Standard Libraries
Lecture 4 | Programming Abstractions Lecture 4 | Programming Abstractions - YouTube
C++ Console I/O, C++ File I/O, Stream Operations
Lecture 5 | Programming Abstractions Lecture 5 | Programming Abstractions - YouTube
Client Use of Templates, Vector Class, Vector Client Interface
Lecture 6 | Programming Abstractions Lecture 6 | Programming Abstractions - YouTube
More Containers, Map Class, Uses of Map, Map Client Interface
Lecture 7 | Programming Abstractions Lecture 7 | Programming Abstractions - YouTube
Seeing Functions as Data: Specific Plot Functions, Generic Plot Function, Back to the Set
Lecture 8 | Programming Abstractions Lecture 8 | Programming Abstractions - YouTube
Common Mistakes Stumbled Upon: 'I'terator, Common Mistakes Stumbled Upon: Concatenating Strings, Solving Problems Recursively, Functional Recursion
Lecture 9 | Programming Abstractions Lecture 9 | Programming Abstractions - YouTube
Thinking Recursively, Procedural vs Functional - Recursion, Fractal Code
Lecture 10 | Programming Abstractions Lecture 10 | Programming Abstractions - YouTube
Refresh: Permute Code, Tree of Recursive Calls
Lecture 11 | Programming Abstractions Lecture 11 | Programming Abstractions - YouTube
Backtracking Pseudocode, Sudoku Solver, Sudoku Code, Cryptarithmetic, Dumb Solver, Smarter Solver, Looking for Patterns
Lecture 12 | Programming Abstractions Lecture 12 | Programming Abstractions - YouTube
Pointer Movie, Pointer Operations: Code & Pointer Memory Diagrams, Pointer Basics, Pointer and Dynamic Arrays, Use of Pointers
Lecture 13 | Programming Abstractions Lecture 13 | Programming Abstractions - YouTube
Coding with Linked List, Printing the List, Using Recursion to Print List, De-allocating the Memory Used for the Linked List
Lecture 14 | Programming Abstractions Lecture 14 | Programming Abstractions - YouTube
Algorithm Analysis, Evaluating the Performance, Analysis of Codes: Statement Counts
Lecture 15 | Programming Abstractions Lecture 15 | Programming Abstractions - YouTube
Selection Sort, Live Demo: Working/execution of the Code, Selection Sort Analysis, Insertion Sort Algorithm
Lecture 16 | Programming Abstractions Lecture 16 | Programming Abstractions - YouTube
Partitioning for Quicksort, Quicksort Code Working/execution, Quicksort Code
Lecture 17 | Programming Abstractions Lecture 17 | Programming Abstractions - YouTube
Sort Template with Callback, Supplying the Callback Function, One Last Convenience: Default Callback Function, Why Object Oriented Programming
Lecture 18 | Programming Abstractions Lecture 18 | Programming Abstractions - YouTube
Abstract Data Types, Wall of Abstraction, Why ADTs?
Lecture 19 | Programming Abstractions Lecture 19 | Programming Abstractions - YouTube
Rules of Template Implementation, Explanation of the Working, Not Allow Member Wise Copy, InsertAt Function
Lecture 20 | Programming Abstractions Lecture 20 | Programming Abstractions - YouTube
Live Coding: Recap of the Vector-based Implementation for Stack, Linked List Implementation for Stack, Live Coding: Linked List Implementation for Stack, Analyzing Push/pop Functions, Queue Implementation
Lecture 21 | Programming Abstractions Lecture 21 | Programming Abstractions - YouTube
Buffer: Vector vs Stack, Buffer as Linked List, Cursor Design, Use of Dummy Cell, Linked List Insert/delete, Linked List Cursor Movement
Lecture 22 | Programming Abstractions Lecture 22 | Programming Abstractions - YouTube
Map as Vector, A different Strategy: Binary Search Tree, Trees in General, Binary Search Tree for Numbers, Operating on Trees, Tree Traversals at Work
Lecture 23 | Programming Abstractions Lecture 23 | Programming Abstractions - YouTube
Pathfinder Demo, Graphs: Examples, Graphs: Explanation, Implementation Strategies, Graph Representation in C++, Nodes and Arcs in C++, Graph Traversals
Lecture 24 | Programming Abstractions Lecture 24 | Programming Abstractions - YouTube
Compare Map Implementations, Hashtable Idea, Hash Functions, Hash Collisions
Lecture 25 | Programming Abstractions Lecture 25 | Programming Abstractions - YouTube
Lexicon Case Study, Lexicon as Sorted Vector, Lexicon as BST, Lexicon as Hash Table, Summary so Far, Noticing Patterns/repetitions in the Words
Lecture 26 | Programming Abstractions Lecture 26 | Programming Abstractions - YouTube
Final Showdown, Thinking About Design, Runtime Performance, Memory Used, Code Complexity, Making Tradeoffs, Array vs Vector, Stack/Queue vs Vector
Lecture 27 | Programming Abstractions Lecture 27 | Programming Abstractions - YouTube
Guest Lecturer: Keith Schwarz, About the C++ Language, Quick History of C++, C++ Philosophy, C++ Without genlib.h, A Working genlib.h Replacement

関連記事 on Publickey


このエントリーをはてなブックマークに追加 Bookmark this on Delicious     fig Follow Me  fig RSS

タグ : OpenCourse

次の記事
OpenCourse: Programming Methodology / Stanford
前の記事
OpenCourse: Programming Paradigms / Stanford

Loading...

Blogger in Chief

photo of jniino Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。新しいオンラインメディアの可能性を追求しています。
詳しいプロフィール


Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
RSSリーダーで : Feed





アクセスランキング - 過去7日間

  1. 特許庁の基幹システム失敗の背景にある、日本に…
  2. 国内の開発者が使っている言語、1位C、2位V…
  3. 特許庁の基幹システムはなぜ失敗したのか。元内…
  4. 英国政府、新ポータルGov.ukをクラウド、…
  5. なぜ米ヒューレット・パッカードは、一挙に16…
  6. OpenFlowベンチャーのNicira N…
  7. ライアン・ダール氏、Node.jsの開発リー…
  8. フラッシュストレージが最大500TB! 米N…
  9. EMC、満を持してPCIe接続フラッシュスト…
  10. 2012年1月の人気記事「グーグルのバグ予測…
  11. マイクロソフトの責任者が語る「われわれはどの…
  12. 「絶対落ちないシステムを作れ」という要件に、…
  13. ソフトウェアテストの30年前と30年後(前編…
  14. ソフトウェアテストの近未来を話そう(前編)~…
  15. ソフトウェアテストの近未来を話そう(後編)~…

最新記事 10本

バックナンバー



アルファブロガー・アワード2010受賞 Publickeyはアルファブロガー・アワード 2010を受賞しました! いつもご愛読ありがとうございます。









blog comments powered by Disqus