2019-2020 2020-2021 2021-2022 2022-2023 2023-2024
Browse
by subject...
    Schedule
view...
 

1 - 10 of 25 results for: CS

CS 106A: Programming Methodology (ENGR 70A)

Introduction to the engineering of computer applications emphasizing modern software engineering principles: object-oriented design, decomposition, encapsulation, abstraction, and testing. Uses the Java programming language. Emphasis is on good programming style and the built-in facilities of the Java language. No prior programming experience required. Summer quarter enrollment is limited and requires an application.
Terms: Aut, Win, Spr, Sum | Units: 3-5 | UG Reqs: WAY-FR, GER:DB-EngrAppSci

CS 106B: Programming Abstractions (ENGR 70B)

Abstraction and its relation to programming. Software engineering principles of data abstraction and modularity. Object-oriented programming, fundamental data structures (such as stacks, queues, sets) and data-directed design. Recursion and recursive data structures (linked lists, trees, graphs). Introduction to time and space complexity analysis. Uses the programming language C++ covering its basic facilities. Prerequisite: 106A or equivalent. Summer quarter enrollment is limited; application required.
Terms: Aut, Win, Spr, Sum | Units: 3-5 | UG Reqs: GER:DB-EngrAppSci, WAY-FR

CS 107: Computer Organization and Systems

Introduction to the fundamental concepts of computer systems. Explores how computer systems execute programs and manipulate data, working from the C programming language down to the microprocessor. Topics covered include: the C programming language, data representation, machine-level code, computer arithmetic, elements of code compilation, memory organization and management, and performance evaluation and optimization. Prerequisites: 106B or X, or consent of instructor.
Terms: Aut, Win, Spr, Sum | Units: 3-5 | UG Reqs: WAY-FR, GER:DB-EngrAppSci

CS 109: Introduction to Probability for Computer Scientists

Topics include: counting and combinatorics, random variables, conditional probability, independence, distributions, expectation, point estimation, and limit theorems. Applications of probability in computer science including machine learning and the use of probability in the analysis of algorithms. Prerequisites: 103, 106B or X, MATH 51 or equivalent.
Terms: Win, Spr, Sum | Units: 3-5 | UG Reqs: WAY-AQR, WAY-FR, GER:DB-EngrAppSci

CS 143: Compilers

Principles and practices for design and implementation of compilers and interpreters. Topics: lexical analysis; parsing theory; symbol tables; type systems; scope; semantic analysis; intermediate representations; runtime environments; code generation; and basic program analysis and optimization. Students construct a compiler for a simple object-oriented language during course programming projects. Prerequisites: 103 or 103B, and 107.
Terms: Spr, Sum | Units: 3-4 | UG Reqs: GER:DB-EngrAppSci

CS 145: Introduction to Databases

The course covers database design and the use of database management systems for applications. It includes extensive coverage of the relational model, relational algebra, and SQL. It also covers XML data including DTDs and XML Schema for validation, and the query and transformation languages XPath, XQuery, and XSLT. The course includes database design in UML, and relational design principles based on dependencies and normal forms. Many additional key database topics from the design and application-building perspective are also covered: indexes, views, transactions, authorization, integrity constraints, triggers, on-line analytical processing (OLAP), JSON, and emerging NoSQL systems. Class time will include guest speakers from industry and additional advanced topics as time and class interest permits. Prerequisites: 103 and 107 (or equivalent).
Terms: Aut, Sum | Units: 3-4 | UG Reqs: GER:DB-EngrAppSci

CS 148: Introduction to Computer Graphics and Imaging

Introductory prerequisite course in the computer graphics sequence introducing students to the technical concepts behind creating synthetic computer generated images. Focuses on using OpenGL to create visual imagery, as well as an understanding of the underlying mathematical concepts including triangles, normals, interpolation, texture mapping, bump mapping, etc. Course will cover fundamental understanding of light and color, as well as how it impacts computer displays and printers. Class will discuss more thoroughly how light interacts with the environment, constructing engineering models such as the BRDF, plus various simplifications into more basic lighting and shading models. Also covers ray tracing technology for creating virtual images, while drawing parallels between ray tracers and real world cameras to illustrate various concepts. Anti-aliasing and acceleration structures are also discussed. The final class mini-project consists of building out a ray tracer to create visually compelling images. Starter codes and code bits will be provided to aid in development, but this class focuses on what you can do with the code as opposed to what the code itself looks like. Therefore grading is weighted toward in person "demos" of the code in action - creativity and the production of impressive visual imagery are highly encouraged. Prerequisites: CS 107, MATH 51.
Terms: Aut, Sum | Units: 3-4 | UG Reqs: GER:DB-EngrAppSci, WAY-CE

CS 161: Design and Analysis of Algorithms

Worst and average case analysis. Recurrences and asymptotics. Efficient algorithms for sorting, searching, and selection. Data structures: binary search trees, heaps, hash tables. Algorithm design techniques: divide-and-conquer, dynamic programming, greedy algorithms, amortized analysis, randomization. Algorithms for fundamental graph problems: minimum-cost spanning tree, connected components, topological sort, and shortest paths. Possible additional topics: network flow, string searching. Prerequisite: 103 or 103B; 109 or STATS 116.
Terms: Aut, Spr, Sum | Units: 3-5 | UG Reqs: GER:DB-EngrAppSci, WAY-FR

CS 191: Senior Project

Restricted to Computer Science and Computer Systems Engineering students. Group or individual projects under faculty direction. Register using instructor's section number. A project can be either a significant software application or publishable research. Software application projects include substantial programming and modern user-interface technologies and are comparable in scale to shareware programs or commercial applications. Research projects may result in a paper publishable in an academic journal or presentable at a conference. Required public presentation of final application or research results.
Terms: Aut, Win, Spr, Sum | Units: 1-6 | Repeatable for credit
Instructors: Aiken, A. (PI) ; Akeley, K. (PI) ; Altman, R. (PI) ; Baker, M. (PI) ; Barbagli, F. (PI) ; Batzoglou, S. (PI) ; Bejerano, G. (PI) ; Bernstein, M. (PI) ; Blikstein, P. (PI) ; Boneh, D. (PI) ; Boyd, S. (PI) ; Bradski, G. (PI) ; Brafman, R. (PI) ; Cain, J. (PI) ; Cao, P. (PI) ; Casado, M. (PI) ; Cheriton, D. (PI) ; Cooper, S. (PI) ; Dally, B. (PI) ; De-Micheli, G. (PI) ; Dill, D. (PI) ; Dwork, C. (PI) ; Engler, D. (PI) ; Fedkiw, R. (PI) ; Feigenbaum, E. (PI) ; Fikes, R. (PI) ; Fisher, K. (PI) ; Fogg, B. (PI) ; Fox, A. (PI) ; Garcia-Molina, H. (PI) ; Genesereth, M. (PI) ; Gill, J. (PI) ; Girod, B. (PI) ; Goel, A. (PI) ; Golub, G. (PI) ; Goodman, N. (PI) ; Guibas, L. (PI) ; Hanrahan, P. (PI) ; Heer, J. (PI) ; Hennessy, J. (PI) ; Horowitz, M. (PI) ; Johari, R. (PI) ; Johnson, M. (PI) ; Jurafsky, D. (PI) ; Katti, S. (PI) ; Kay, M. (PI) ; Khatib, O. (PI) ; Klemmer, S. (PI) ; Koller, D. (PI) ; Koltun, V. (PI) ; Konolige, K. (PI) ; Kozyrakis, C. (PI) ; Kundaje, A. (PI) ; Lam, M. (PI) ; Latombe, J. (PI) ; Leskovec, J. (PI) ; Levis, P. (PI) ; Levitt, M. (PI) ; Levoy, M. (PI) ; Li, F. (PI) ; Liang, P. (PI) ; Manna, Z. (PI) ; Manning, C. (PI) ; Mazieres, D. (PI) ; McCarthy, J. (PI) ; McCluskey, E. (PI) ; McKeown, N. (PI) ; Meng, T. (PI) ; Mitchell, J. (PI) ; Montanari, A. (PI) ; Motwani, R. (PI) ; Musen, M. (PI) ; Nass, C. (PI) ; Nayak, P. (PI) ; Ng, A. (PI) ; Nilsson, N. (PI) ; Olukotun, O. (PI) ; Ousterhout, J. (PI) ; Paepcke, A. (PI) ; Parlante, N. (PI) ; Pea, R. (PI) ; Plotkin, S. (PI) ; Plummer, R. (PI) ; Prabhakar, B. (PI) ; Pratt, V. (PI) ; Raghavan, P. (PI) ; Rajaraman, A. (PI) ; Re, C. (PI) ; Roberts, E. (PI) ; Rosenblum, M. (PI) ; Roughgarden, T. (PI) ; Sahami, M. (PI) ; Salisbury, J. (PI) ; Savarese, S. (PI) ; Schwarz, K. (PI) ; Shoham, Y. (PI) ; Thrun, S. (PI) ; Tobagi, F. (PI) ; Trevisan, L. (PI) ; Ullman, J. (PI) ; Valiant, G. (PI) ; Van Roy, B. (PI) ; Wang, G. (PI) ; Widom, J. (PI) ; Wiederhold, G. (PI) ; Williams, R. (PI) ; Winograd, T. (PI) ; Young, P. (PI) ; Zelenski, J. (PI)

CS 192: Programming Service Project

Restricted to Computer Science students. Appropriate academic credit (without financial support) is given for volunteer computer programming work of public benefit and educational value.
Terms: Aut, Win, Spr, Sum | Units: 1-4 | Repeatable for credit
Instructors: Aiken, A. (PI) ; Altman, R. (PI) ; Baker, M. (PI) ; Barbagli, F. (PI) ; Batzoglou, S. (PI) ; Bejerano, G. (PI) ; Bernstein, M. (PI) ; Boneh, D. (PI) ; Bradski, G. (PI) ; Brafman, R. (PI) ; Cain, J. (PI) ; Cao, P. (PI) ; Cheriton, D. (PI) ; Cooper, S. (PI) ; Dally, B. (PI) ; De-Micheli, G. (PI) ; Dill, D. (PI) ; Dwork, C. (PI) ; Engler, D. (PI) ; Fedkiw, R. (PI) ; Feigenbaum, E. (PI) ; Fikes, R. (PI) ; Fisher, K. (PI) ; Fogg, B. (PI) ; Fox, A. (PI) ; Garcia-Molina, H. (PI) ; Genesereth, M. (PI) ; Gill, J. (PI) ; Girod, B. (PI) ; Goel, A. (PI) ; Golub, G. (PI) ; Guibas, L. (PI) ; Hanrahan, P. (PI) ; Heer, J. (PI) ; Hennessy, J. (PI) ; Horowitz, M. (PI) ; Johari, R. (PI) ; Johnson, M. (PI) ; Jurafsky, D. (PI) ; Katti, S. (PI) ; Kay, M. (PI) ; Khatib, O. (PI) ; Klemmer, S. (PI) ; Koller, D. (PI) ; Koltun, V. (PI) ; Konolige, K. (PI) ; Kozyrakis, C. (PI) ; Lam, M. (PI) ; Latombe, J. (PI) ; Leskovec, J. (PI) ; Levis, P. (PI) ; Levitt, M. (PI) ; Levoy, M. (PI) ; Li, F. (PI) ; Manna, Z. (PI) ; Manning, C. (PI) ; Mazieres, D. (PI) ; McCarthy, J. (PI) ; McCluskey, E. (PI) ; McKeown, N. (PI) ; Meng, T. (PI) ; Mitchell, J. (PI) ; Motwani, R. (PI) ; Musen, M. (PI) ; Nass, C. (PI) ; Nayak, P. (PI) ; Ng, A. (PI) ; Nilsson, N. (PI) ; Olukotun, O. (PI) ; Ousterhout, J. (PI) ; Parlante, N. (PI) ; Plotkin, S. (PI) ; Plummer, R. (PI) ; Prabhakar, B. (PI) ; Pratt, V. (PI) ; Raghavan, P. (PI) ; Rajaraman, A. (PI) ; Roberts, E. (PI) ; Rosenblum, M. (PI) ; Roughgarden, T. (PI) ; Sahami, M. (PI) ; Salisbury, J. (PI) ; Schwarz, K. (PI) ; Shoham, Y. (PI) ; Thrun, S. (PI) ; Tobagi, F. (PI) ; Trevisan, L. (PI) ; Ullman, J. (PI) ; Van Roy, B. (PI) ; Widom, J. (PI) ; Wiederhold, G. (PI) ; Williams, R. (PI) ; Winograd, T. (PI) ; Young, P. (PI) ; Zelenski, J. (PI)
Filter Results:
term offered
updating results...
teaching presence
updating results...
number of units
updating results...
time offered
updating results...
days
updating results...
UG Requirements (GERs)
updating results...
component
updating results...
career
updating results...
© Stanford University | Terms of Use | Copyright Complaints