Searching for hash : 34 results found | RSS Feed for this search

6.851 Advanced Data Structures (MIT) 6.851 Advanced Data Structures (MIT)

Description

Includes audio/video content: AV lectures. Data structures play a central role in modern computer science. You interact with data structures even more often than with algorithms (think Google, your mail server, and even your network routers). In addition, data structures are essential building blocks in obtaining efficient algorithms. This course covers major results and current directions of research in data structure. Acknowledgments Thanks to videographers Martin Demaine and Justin Zhang. Includes audio/video content: AV lectures. Data structures play a central role in modern computer science. You interact with data structures even more often than with algorithms (think Google, your mail server, and even your network routers). In addition, data structures are essential building blocks in obtaining efficient algorithms. This course covers major results and current directions of research in data structure. Acknowledgments Thanks to videographers Martin Demaine and Justin Zhang.Subjects

data | data | structures | structures | data structures | data structures | computers | computers | computer science | computer science | strings | strings | dynamic graphs | dynamic graphs | integers | integers | hash | hash | hashing | hashing | hashish | hashish | hashtag | hashtag | hash tag | hash tag | hash tagger | hash tagger | memory | memory | memory heirarchy | memory heirarchy | binary tree | binary tree | binary search | binary search | binary search tree | binary search tree | time travel | time travel | back to the future | back to the future | forward to the past | forward to the past | database | database | table | table | database table | database table | cache | cache | caching | caching | mad cache money | mad cache money | logarithmic time | logarithmic time | eurythmic time | eurythmic time | operations | operations | search | search | heaps | heapsLicense

Content within individual OCW courses is (c) by the individual authors unless otherwise noted. MIT OpenCourseWare materials are licensed by the Massachusetts Institute of Technology under a Creative Commons License (Attribution-NonCommercial-ShareAlike). For further information see http://ocw.mit.edu/terms/index.htmSite sourced from

http://ocw.mit.edu/rss/all/mit-allavcourses.xmlAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadata6.851 Advanced Data Structures (MIT)

Description

Data structures play a central role in modern computer science. You interact with data structures even more often than with algorithms (think Google, your mail server, and even your network routers). In addition, data structures are essential building blocks in obtaining efficient algorithms. This course covers major results and current directions of research in data structure. Acknowledgments Thanks to videographers Martin Demaine and Justin Zhang.Subjects

data | structures | data structures | computers | computer science | strings | dynamic graphs | integers | hash | hashing | hashish | hashtag | hash tag | hash tagger | memory | memory heirarchy | binary tree | binary search | binary search tree | time travel | back to the future | forward to the past | database | table | database table | cache | caching | mad cache money | logarithmic time | eurythmic time | operations | search | heapsLicense

Content within individual OCW courses is (c) by the individual authors unless otherwise noted. MIT OpenCourseWare materials are licensed by the Massachusetts Institute of Technology under a Creative Commons License (Attribution-NonCommercial-ShareAlike). For further information see https://ocw.mit.edu/terms/index.htmSite sourced from

https://ocw.mit.edu/rss/all/mit-allcourses.xmlAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadata6.006 Introduction to Algorithms (MIT) 6.006 Introduction to Algorithms (MIT)

Description

This course provides an introduction to mathematical modeling of computational problems. It covers the common algorithms, algorithmic paradigms, and data structures used to solve these problems. The course emphasizes the relationship between algorithms and programming, and introduces basic performance measures and analysis techniques for these problems. This course provides an introduction to mathematical modeling of computational problems. It covers the common algorithms, algorithmic paradigms, and data structures used to solve these problems. The course emphasizes the relationship between algorithms and programming, and introduces basic performance measures and analysis techniques for these problems.Subjects

algorithms | algorithms | python | python | python cost model | python cost model | binary search trees | binary search trees | hashing | hashing | sorting | sorting | searching | searching | shortest paths | shortest paths | dynamic programming | dynamic programming | numerics | numerics | document distance | document distance | longest common substring | longest common substring | dijkstra | dijkstra | fibonacci | fibonacci | image resizing | image resizing | chaining | chaining | hash functions | hash functions | priority queues | priority queues | breadth first search | breadth first search | depth first search | depth first search | memoization | memoization | divide and conquer | divide and conquerLicense

Content within individual OCW courses is (c) by the individual authors unless otherwise noted. MIT OpenCourseWare materials are licensed by the Massachusetts Institute of Technology under a Creative Commons License (Attribution-NonCommercial-ShareAlike). For further information see http://ocw.mit.edu/terms/index.htmSite sourced from

http://ocw.mit.edu/rss/all/mit-allcourses-6.xmlAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadataDescription

Includes audio/video content: AV lectures. This course teaches techniques for the design and analysis of efficient algorithms, emphasizing methods useful in practice. Topics covered include: sorting; search trees, heaps, and hashing; divide-and-conquer; dynamic programming; amortized analysis; graph algorithms; shortest paths; network flow; computational geometry; number-theoretic algorithms; polynomial and matrix calculations; caching; and parallel computing.This course was also taught as part of the Singapore-MIT Alliance (SMA) programme as course number SMA 5503 (Analysis and Design of Algorithms). Includes audio/video content: AV lectures. This course teaches techniques for the design and analysis of efficient algorithms, emphasizing methods useful in practice. Topics covered include: sorting; search trees, heaps, and hashing; divide-and-conquer; dynamic programming; amortized analysis; graph algorithms; shortest paths; network flow; computational geometry; number-theoretic algorithms; polynomial and matrix calculations; caching; and parallel computing.This course was also taught as part of the Singapore-MIT Alliance (SMA) programme as course number SMA 5503 (Analysis and Design of Algorithms).Subjects

algorithms | algorithms | efficient algorithms | efficient algorithms | sorting | sorting | search trees | search trees | heaps | heaps | hashing | hashing | divide-and-conquer | divide-and-conquer | dynamic programming | dynamic programming | amortized analysis | amortized analysis | graph algorithms | graph algorithms | shortest paths | shortest paths | network flow | network flow | computational geometry | computational geometry | number-theoretic algorithms | number-theoretic algorithms | polynomial and matrix calculations | polynomial and matrix calculations | caching | caching | parallel computing | parallel computingLicense

Content within individual OCW courses is (c) by the individual authors unless otherwise noted. MIT OpenCourseWare materials are licensed by the Massachusetts Institute of Technology under a Creative Commons License (Attribution-NonCommercial-ShareAlike). For further information see http://ocw.mit.edu/terms/index.htmSite sourced from

http://ocw.mit.edu/rss/all/mit-allavcourses.xmlAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadata6.046J Design and Analysis of Algorithms (MIT) 6.046J Design and Analysis of Algorithms (MIT)

Description

Techniques for the design and analysis of efficient algorithms, emphasizing methods useful in practice. Topics include sorting; search trees, heaps, and hashing; divide-and-conquer; dynamic programming; greedy algorithms; amortized analysis; graph algorithms; and shortest paths. Advanced topics may include network flow, computational geometry, number-theoretic algorithms, polynomial and matrix calculations, caching, and parallel computing. Techniques for the design and analysis of efficient algorithms, emphasizing methods useful in practice. Topics include sorting; search trees, heaps, and hashing; divide-and-conquer; dynamic programming; greedy algorithms; amortized analysis; graph algorithms; and shortest paths. Advanced topics may include network flow, computational geometry, number-theoretic algorithms, polynomial and matrix calculations, caching, and parallel computing.Subjects

sorting | sorting | search trees | search trees | heaps | heaps | hashing | hashing | divide and conquer | divide and conquer | dynamic programming | dynamic programming | greedy algorithms | greedy algorithms | amortized analysis | amortized analysis | graph algorithms | graph algorithms | shortest paths | shortest pathsLicense

Content within individual OCW courses is (c) by the individual authors unless otherwise noted. MIT OpenCourseWare materials are licensed by the Massachusetts Institute of Technology under a Creative Commons License (Attribution-NonCommercial-ShareAlike). For further information see http://ocw.mit.edu/terms/index.htmSite sourced from

http://ocw.mit.edu/rss/all/mit-allcourses-6.xmlAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadataDescription

This course introduces the basic computational methods used to understand the cell on a molecular level. It covers subjects such as the sequence alignment algorithms: dynamic programming, hashing, suffix trees, and Gibbs sampling. Furthermore, it focuses on computational approaches to: genetic and physical mapping; genome sequencing, assembly, and annotation; RNA expression and secondary structure; protein structure and folding; and molecular interactions and dynamics. This course introduces the basic computational methods used to understand the cell on a molecular level. It covers subjects such as the sequence alignment algorithms: dynamic programming, hashing, suffix trees, and Gibbs sampling. Furthermore, it focuses on computational approaches to: genetic and physical mapping; genome sequencing, assembly, and annotation; RNA expression and secondary structure; protein structure and folding; and molecular interactions and dynamics.Subjects

basic computational methods cell on a molecular level | basic computational methods cell on a molecular level | sequence alignment algorithms | sequence alignment algorithms | dynamic programming | dynamic programming | hashing | hashing | suffix trees | suffix trees | Gibbs sampling | Gibbs sampling | genetic and physical mapping | genetic and physical mapping | genome sequencing | genome sequencing | assembly | assembly | and annotation | and annotation | RNA expression and secondary structure | RNA expression and secondary structure | protein structure and folding | protein structure and folding | and molecular interactions and dynamics | and molecular interactions and dynamics | annotation | annotation | molecular interactions and dynamics | molecular interactions and dynamicsLicense

Content within individual OCW courses is (c) by the individual authors unless otherwise noted. MIT OpenCourseWare materials are licensed by the Massachusetts Institute of Technology under a Creative Commons License (Attribution-NonCommercial-ShareAlike). For further information see http://ocw.mit.edu/terms/index.htmSite sourced from

http://ocw.mit.edu/rss/all/mit-alllifesciencescourses.xmlAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadata6.087 Practical Programming in C (MIT) 6.087 Practical Programming in C (MIT)

Description

This course provides a thorough introduction to the C programming language, the workhorse of the UNIX operating system and lingua franca of embedded processors and micro-controllers. The first two weeks will cover basic syntax and grammar, and expose students to practical programming techniques. The remaining lectures will focus on more advanced concepts, such as dynamic memory allocation, concurrency and synchronization, UNIX signals and process control, library development and usage. Daily programming assignments and weekly laboratory exercises are required. Knowledge of C is highly marketable for summer internships, UROPs, and full-time positions in software and embedded systems development. This course provides a thorough introduction to the C programming language, the workhorse of the UNIX operating system and lingua franca of embedded processors and micro-controllers. The first two weeks will cover basic syntax and grammar, and expose students to practical programming techniques. The remaining lectures will focus on more advanced concepts, such as dynamic memory allocation, concurrency and synchronization, UNIX signals and process control, library development and usage. Daily programming assignments and weekly laboratory exercises are required. Knowledge of C is highly marketable for summer internships, UROPs, and full-time positions in software and embedded systems development.Subjects

writing C programs | writing C programs | compiling C programs | compiling C programs | variables and datatypes | variables and datatypes | control flow | control flow | input and output | input and output | pointers and memory addressing | pointers and memory addressing | arrays and pointer arithmetic | arrays and pointer arithmetic | memory allocation | memory allocation | stacks and queues | stacks and queues | hash tables | hash tables | C standard library | C standard library | dynamic memory allocation | dynamic memory allocation | multithreading | multithreading | concurrency | concurrency | asynchronous input/output | asynchronous input/outputLicense

Content within individual OCW courses is (c) by the individual authors unless otherwise noted. MIT OpenCourseWare materials are licensed by the Massachusetts Institute of Technology under a Creative Commons License (Attribution-NonCommercial-ShareAlike). For further information see http://ocw.mit.edu/terms/index.htmSite sourced from

http://ocw.mit.edu/rss/all/mit-allcourses-6.xmlAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadata6.006 Introduction to Algorithms (MIT)

Description

This course provides an introduction to mathematical modeling of computational problems. It covers the common algorithms, algorithmic paradigms, and data structures used to solve these problems. The course emphasizes the relationship between algorithms and programming, and introduces basic performance measures and analysis techniques for these problems.Subjects

algorithms | python | python cost model | binary search trees | hashing | sorting | searching | shortest paths | dynamic programming | numerics | document distance | longest common substring | dijkstra | fibonacci | image resizing | chaining | hash functions | priority queues | breadth first search | depth first search | memoization | divide and conquerLicense

Content within individual OCW courses is (c) by the individual authors unless otherwise noted. MIT OpenCourseWare materials are licensed by the Massachusetts Institute of Technology under a Creative Commons License (Attribution-NonCommercial-ShareAlike). For further information see https://ocw.mit.edu/terms/index.htmSite sourced from

https://ocw.mit.edu/rss/all/mit-allcourses.xmlAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadataDescription

This course teaches techniques for the design and analysis of efficient algorithms, emphasizing methods useful in practice. Topics covered include: sorting; search trees, heaps, and hashing; divide-and-conquer; dynamic programming; amortized analysis; graph algorithms; shortest paths; network flow; computational geometry; number-theoretic algorithms; polynomial and matrix calculations; caching; and parallel computing.This course was also taught as part of the Singapore-MIT Alliance (SMA) programme as course number SMA 5503 (Analysis and Design of Algorithms). This course teaches techniques for the design and analysis of efficient algorithms, emphasizing methods useful in practice. Topics covered include: sorting; search trees, heaps, and hashing; divide-and-conquer; dynamic programming; amortized analysis; graph algorithms; shortest paths; network flow; computational geometry; number-theoretic algorithms; polynomial and matrix calculations; caching; and parallel computing.This course was also taught as part of the Singapore-MIT Alliance (SMA) programme as course number SMA 5503 (Analysis and Design of Algorithms).Subjects

algorithms | algorithms | efficient algorithms | efficient algorithms | sorting | sorting | search trees | search trees | heaps | heaps | hashing | hashing | divide-and-conquer | divide-and-conquer | dynamic programming | dynamic programming | amortized analysis | amortized analysis | graph algorithms | graph algorithms | shortest paths | shortest paths | network flow | network flow | computational geometry | computational geometry | number-theoretic algorithms | number-theoretic algorithms | polynomial and matrix calculations | polynomial and matrix calculations | caching | caching | parallel computing | parallel computing | SMA 5503 | SMA 5503 | 6.046 | 6.046License

Content within individual OCW courses is (c) by the individual authors unless otherwise noted. MIT OpenCourseWare materials are licensed by the Massachusetts Institute of Technology under a Creative Commons License (Attribution-NonCommercial-ShareAlike). For further information see http://ocw.mit.edu/terms/index.htmSite sourced from

http://ocw.mit.edu/rss/all/mit-allarchivedcourses.xmlAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadata6.046J Introduction to Algorithms (MIT) 6.046J Introduction to Algorithms (MIT)

Description

This course teaches techniques for the design and analysis of efficient algorithms, emphasizing methods useful in practice. Topics covered include: sorting; search trees, heaps, and hashing; divide-and-conquer; dynamic programming; amortized analysis; graph algorithms; shortest paths; network flow; computational geometry; number-theoretic algorithms; polynomial and matrix calculations; caching; and parallel computing. This course teaches techniques for the design and analysis of efficient algorithms, emphasizing methods useful in practice. Topics covered include: sorting; search trees, heaps, and hashing; divide-and-conquer; dynamic programming; amortized analysis; graph algorithms; shortest paths; network flow; computational geometry; number-theoretic algorithms; polynomial and matrix calculations; caching; and parallel computing.Subjects

algorithms | algorithms | efficient algorithms | efficient algorithms | sorting | sorting | search trees | search trees | heaps | heaps | hashing | hashing | divide-and-conquer | divide-and-conquer | dynamic programming | dynamic programming | amortized analysis | amortized analysis | graph algorithms | graph algorithms | shortest paths | shortest paths | network flow | network flow | computational geometry | computational geometry | number-theoretic algorithms | number-theoretic algorithms | polynomial and matrix calculations | polynomial and matrix calculations | caching | caching | parallel computing | parallel computing | 6.046 | 6.046 | 18.410 | 18.410License

Content within individual OCW courses is (c) by the individual authors unless otherwise noted. MIT OpenCourseWare materials are licensed by the Massachusetts Institute of Technology under a Creative Commons License (Attribution-NonCommercial-ShareAlike). For further information see http://ocw.mit.edu/terms/index.htmSite sourced from

http://ocw.mit.edu/rss/all/mit-allarchivedcourses.xmlAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadata6.857 Network and Computer Security (MIT) 6.857 Network and Computer Security (MIT)

Description

6.857 Network and Computer Security is an upper-level undergraduate, first-year graduate course on network and computer security. It fits within the Computer Systems and Architecture Engineering concentration. 6.857 Network and Computer Security is an upper-level undergraduate, first-year graduate course on network and computer security. It fits within the Computer Systems and Architecture Engineering concentration.Subjects

network | network | computer security | computer security | security | security | cryptography | cryptography | secret-key | secret-key | public-key | public-key | digital signature | digital signature | authentication | authentication | Bitcoin | Bitcoin | encryption | encryption | block ciphers | block ciphers | cryptographic hash functions | cryptographic hash functions | one-time pad | one-time pad | stream ciphers | stream ciphers | web browser security | web browser security | biometrics | biometrics | Viruses | Viruses | electronic voting | electronic votingLicense

Content within individual OCW courses is (c) by the individual authors unless otherwise noted. MIT OpenCourseWare materials are licensed by the Massachusetts Institute of Technology under a Creative Commons License (Attribution-NonCommercial-ShareAlike). For further information see http://ocw.mit.edu/terms/index.htmSite sourced from

http://ocw.mit.edu/rss/all/mit-allcourses-6.xmlAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadata6.006 Introduction to Algorithms (MIT) 6.006 Introduction to Algorithms (MIT)

Description

Includes audio/video content: AV lectures. This course provides an introduction to mathematical modeling of computational problems. It covers the common algorithms, algorithmic paradigms, and data structures used to solve these problems. The course emphasizes the relationship between algorithms and programming, and introduces basic performance measures and analysis techniques for these problems. Includes audio/video content: AV lectures. This course provides an introduction to mathematical modeling of computational problems. It covers the common algorithms, algorithmic paradigms, and data structures used to solve these problems. The course emphasizes the relationship between algorithms and programming, and introduces basic performance measures and analysis techniques for these problems.Subjects

algorithms | algorithms | data structures | data structures | algorithm performance | algorithm performance | algorithm analysis | algorithm analysis | sorting | sorting | trees | trees | hashing | hashing | numerics | numerics | graphs | graphs | shortest paths | shortest paths | dynamic programming | dynamic programming | Python | PythonLicense

Content within individual OCW courses is (c) by the individual authors unless otherwise noted. MIT OpenCourseWare materials are licensed by the Massachusetts Institute of Technology under a Creative Commons License (Attribution-NonCommercial-ShareAlike). For further information see http://ocw.mit.edu/terms/index.htmSite sourced from

http://ocw.mit.edu/rss/all/mit-allavcourses.xmlAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadataDescription

Includes audio/video content: AV lectures. This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python programming language. Includes audio/video content: AV lectures. This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python programming language.Subjects

Python programming | Python programming | algorithms | algorithms | dynamic programming | dynamic programming | object-oriented programming | object-oriented programming | debugging | debugging | problem solving | problem solving | recursion | recursion | iteration | iteration | search algorithms | search algorithms | program efficiency | program efficiency | order of growth | order of growth | memoization | memoization | hashing | hashing | object classes | object classes | inheritance | inheritance | Monte Carlo simulation | Monte Carlo simulation | curve fitting | curve fitting | optimization | optimization | clustering | clustering | queuing networks | queuing networks | data sampling | data samplingLicense

Content within individual OCW courses is (c) by the individual authors unless otherwise noted. MIT OpenCourseWare materials are licensed by the Massachusetts Institute of Technology under a Creative Commons License (Attribution-NonCommercial-ShareAlike). For further information see http://ocw.mit.edu/terms/index.htmSite sourced from

http://ocw.mit.edu/rss/all/mit-allavcourses.xmlAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadata6.856J Randomized Algorithms (MIT) 6.856J Randomized Algorithms (MIT)

Description

This course examines how randomization can be used to make algorithms simpler and more efficient via random sampling, random selection of witnesses, symmetry breaking, and Markov chains. Topics covered include: randomized computation; data structures (hash tables, skip lists); graph algorithms (minimum spanning trees, shortest paths, minimum cuts); geometric algorithms (convex hulls, linear programming in fixed or arbitrary dimension); approximate counting; parallel algorithms; online algorithms; derandomization techniques; and tools for probabilistic analysis of algorithms. This course examines how randomization can be used to make algorithms simpler and more efficient via random sampling, random selection of witnesses, symmetry breaking, and Markov chains. Topics covered include: randomized computation; data structures (hash tables, skip lists); graph algorithms (minimum spanning trees, shortest paths, minimum cuts); geometric algorithms (convex hulls, linear programming in fixed or arbitrary dimension); approximate counting; parallel algorithms; online algorithms; derandomization techniques; and tools for probabilistic analysis of algorithms.Subjects

Randomized Algorithms | Randomized Algorithms | algorithms | algorithms | efficient in time and space | efficient in time and space | randomization | randomization | computational problems | computational problems | data structures | data structures | graph algorithms | graph algorithms | optimization | optimization | geometry | geometry | Markov chains | Markov chains | sampling | sampling | estimation | estimation | geometric algorithms | geometric algorithms | parallel and distributed algorithms | parallel and distributed algorithms | parallel and ditributed algorithm | parallel and ditributed algorithm | parallel and distributed algorithm | parallel and distributed algorithm | random sampling | random sampling | random selection of witnesses | random selection of witnesses | symmetry breaking | symmetry breaking | randomized computational models | randomized computational models | hash tables | hash tables | skip lists | skip lists | minimum spanning trees | minimum spanning trees | shortest paths | shortest paths | minimum cuts | minimum cuts | convex hulls | convex hulls | linear programming | linear programming | fixed dimension | fixed dimension | arbitrary dimension | arbitrary dimension | approximate counting | approximate counting | parallel algorithms | parallel algorithms | online algorithms | online algorithms | derandomization techniques | derandomization techniques | probabilistic analysis | probabilistic analysis | computational number theory | computational number theory | simplicity | simplicity | speed | speed | design | design | basic probability theory | basic probability theory | application | application | randomized complexity classes | randomized complexity classes | game-theoretic techniques | game-theoretic techniques | Chebyshev | Chebyshev | moment inequalities | moment inequalities | limited independence | limited independence | coupon collection | coupon collection | occupancy problems | occupancy problems | tail inequalities | tail inequalities | Chernoff bound | Chernoff bound | conditional expectation | conditional expectation | probabilistic method | probabilistic method | random walks | random walks | algebraic techniques | algebraic techniques | probability amplification | probability amplification | sorting | sorting | searching | searching | combinatorial optimization | combinatorial optimization | approximation | approximation | counting problems | counting problems | distributed algorithms | distributed algorithms | 6.856 | 6.856 | 18.416 | 18.416License

Content within individual OCW courses is (c) by the individual authors unless otherwise noted. MIT OpenCourseWare materials are licensed by the Massachusetts Institute of Technology under a Creative Commons License (Attribution-NonCommercial-ShareAlike). For further information see http://ocw.mit.edu/terms/index.htmSite sourced from

http://ocw.mit.edu/rss/all/mit-allcourses-6.xmlAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadata6.046J Design and Analysis of Algorithms (MIT) 6.046J Design and Analysis of Algorithms (MIT)

Description

Includes audio/video content: AV lectures. This is an intermediate algorithms course with an emphasis on teaching techniques for the design and analysis of efficient algorithms, emphasizing methods of application. Topics include divide-and-conquer, randomization, dynamic programming, greedy algorithms, incremental improvement, complexity, and cryptography. Includes audio/video content: AV lectures. This is an intermediate algorithms course with an emphasis on teaching techniques for the design and analysis of efficient algorithms, emphasizing methods of application. Topics include divide-and-conquer, randomization, dynamic programming, greedy algorithms, incremental improvement, complexity, and cryptography.Subjects

algorithm | algorithm | sorting | sorting | search trees | search trees | heaps | heaps | hashing | hashing | divide and conquer | divide and conquer | dynamic programming | dynamic programming | greedy algorithms | greedy algorithms | amortized analysis | amortized analysis | graph algorithms | graph algorithms | shortest paths | shortest paths | network flow | network flow | cryptography | cryptographyLicense

Content within individual OCW courses is (c) by the individual authors unless otherwise noted. MIT OpenCourseWare materials are licensed by the Massachusetts Institute of Technology under a Creative Commons License (Attribution-NonCommercial-ShareAlike). For further information see http://ocw.mit.edu/terms/index.htmSite sourced from

http://ocw.mit.edu/rss/all/mit-allavcourses.xmlAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadata6.087 Practical Programming in C (MIT)

Description

This course provides a thorough introduction to the C programming language, the workhorse of the UNIX operating system and lingua franca of embedded processors and micro-controllers. The first two weeks will cover basic syntax and grammar, and expose students to practical programming techniques. The remaining lectures will focus on more advanced concepts, such as dynamic memory allocation, concurrency and synchronization, UNIX signals and process control, library development and usage. Daily programming assignments and weekly laboratory exercises are required. Knowledge of C is highly marketable for summer internships, UROPs, and full-time positions in software and embedded systems development.Subjects

writing C programs | compiling C programs | variables and datatypes | control flow | input and output | pointers and memory addressing | arrays and pointer arithmetic | memory allocation | stacks and queues | hash tables | C standard library | dynamic memory allocation | multithreading | concurrency | asynchronous input/outputLicense

Content within individual OCW courses is (c) by the individual authors unless otherwise noted. MIT OpenCourseWare materials are licensed by the Massachusetts Institute of Technology under a Creative Commons License (Attribution-NonCommercial-ShareAlike). For further information see https://ocw.mit.edu/terms/index.htmSite sourced from

https://ocw.mit.edu/rss/all/mit-allcourses.xmlAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadataDescription

This course introduces cryptography by addressing topics such as ciphers that were used before World War II, block cipher algorithms, the advanced encryption standard for a symmetric-key encryption adopted by the U.S. government, MD5 and SHA-1 hash functions, and the message authentication code. The course will focus on public key cryptography (as exemplified by the RSA algorithm), elliptic curves, the Diffie-Hellman key exchange, and the elliptic curve discrete logarithm problem. The course concludes with key exchange methods, study signature schemes, and discussion of public key infrastructure. Note: It is strongly recommended that the student complete an abstract algebra course (such as the Saylor Foundationâ€™s MA231) before taking this course. This free course may be completed onliSubjects

computer science | cryptanalysis | ciphers | code | encryption | hash functions | rsa | public key cryptography | elliptic curve | authentication | key exchange | Computer science | I100License

Attribution 2.0 UK: England & Wales Attribution 2.0 UK: England & Wales http://creativecommons.org/licenses/by/2.0/uk/ http://creativecommons.org/licenses/by/2.0/uk/Site sourced from

http://dspace.jorum.ac.uk/oai/request?verb=ListRecords&metadataPrefix=oai_dcAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadata6.087 Practical Programming in C (MIT)

Description

This course provides a thorough introduction to the C programming language, the workhorse of the UNIX operating system and lingua franca of embedded processors and micro-controllers. The first two weeks will cover basic syntax and grammar, and expose students to practical programming techniques. The remaining lectures will focus on more advanced concepts, such as dynamic memory allocation, concurrency and synchronization, UNIX signals and process control, library development and usage. Daily programming assignments and weekly laboratory exercises are required. Knowledge of C is highly marketable for summer internships, UROPs, and full-time positions in software and embedded systems development.Subjects

writing C programs | compiling C programs | variables and datatypes | control flow | input and output | pointers and memory addressing | arrays and pointer arithmetic | memory allocation | stacks and queues | hash tables | C standard library | dynamic memory allocation | multithreading | concurrency | asynchronous input/outputLicense

Content within individual OCW courses is (c) by the individual authors unless otherwise noted. MIT OpenCourseWare materials are licensed by the Massachusetts Institute of Technology under a Creative Commons License (Attribution-NonCommercial-ShareAlike). For further information see https://ocw.mit.edu/terms/index.htmSite sourced from

https://ocw.mit.edu/rss/all/mit-allthaicourses.xmlAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadataDescription

This course introduces cryptography by addressing topics such as ciphers that were used before World War II, block cipher algorithms, the advanced encryption standard for a symmetric-key encryption adopted by the U.S. government, MD5 and SHA-1 hash functions, and the message authentication code. The course will focus on public key cryptography (as exemplified by the RSA algorithm), elliptic curves, the Diffie-Hellman key exchange, and the elliptic curve discrete logarithm problem. The course concludes with key exchange methods, study signature schemes, and discussion of public key infrastructure. Note: It is strongly recommended that the student complete an abstract algebra course (such as the Saylor Foundationâ€™s MA231) before taking this course. This free course may be completed onliSubjects

computer science | cryptanalysis | ciphers | code | encryption | hash functions | rsa | public key cryptography | elliptic curve | authentication | key exchange | Computer science | I100License

Attribution 2.0 UK: England & Wales Attribution 2.0 UK: England & Wales http://creativecommons.org/licenses/by/2.0/uk/ http://creativecommons.org/licenses/by/2.0/uk/Site sourced from

http://dspace.jorum.ac.uk/oai/request?verb=ListRecords&metadataPrefix=oai_dcAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadataFestivals, Drugs and Spirituality

Description

This part of the series discusses the role of various religions in modern festivals, and how drugs have been used to gain religious experiences. Finally the section looks at rave culture as an alternative spirituality.License

Copyright Oxford Brookes University, all rights reserved Copyright Oxford Brookes University, all rights reservedSite sourced from

https://radar.brookes.ac.uk/radar/oai?verb=ListRecords&metadataPrefix=oai_dcAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadata6.046J Introduction to Algorithms (MIT)

Description

This course teaches techniques for the design and analysis of efficient algorithms, emphasizing methods useful in practice. Topics covered include: sorting; search trees, heaps, and hashing; divide-and-conquer; dynamic programming; amortized analysis; graph algorithms; shortest paths; network flow; computational geometry; number-theoretic algorithms; polynomial and matrix calculations; caching; and parallel computing.Subjects

algorithms | efficient algorithms | sorting | search trees | heaps | hashing | divide-and-conquer | dynamic programming | amortized analysis | graph algorithms | shortest paths | network flow | computational geometry | number-theoretic algorithms | polynomial and matrix calculations | caching | parallel computing | 6.046 | 18.410License

Content within individual OCW courses is (c) by the individual authors unless otherwise noted. MIT OpenCourseWare materials are licensed by the Massachusetts Institute of Technology under a Creative Commons License (Attribution-NonCommercial-ShareAlike). For further information see https://ocw.mit.edu/terms/index.htmSite sourced from

https://ocw.mit.edu/rss/all/mit-allarchivedcourses.xmlAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadata6.857 Network and Computer Security (MIT)

Description

6.857 Network and Computer Security is an upper-level undergraduate, first-year graduate course on network and computer security. It fits within the Computer Systems and Architecture Engineering concentration.Subjects

network | computer security | security | cryptography | secret-key | public-key | digital signature | authentication | Bitcoin | encryption | block ciphers | cryptographic hash functions | one-time pad | stream ciphers | web browser security | biometrics | Viruses | electronic votingLicense

Content within individual OCW courses is (c) by the individual authors unless otherwise noted. MIT OpenCourseWare materials are licensed by the Massachusetts Institute of Technology under a Creative Commons License (Attribution-NonCommercial-ShareAlike). For further information see https://ocw.mit.edu/terms/index.htmSite sourced from

https://ocw.mit.edu/rss/all/mit-allcourses.xmlAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadata6.046J Introduction to Algorithms (SMA 5503) (MIT)

Description

This course teaches techniques for the design and analysis of efficient algorithms, emphasizing methods useful in practice. Topics covered include: sorting; search trees, heaps, and hashing; divide-and-conquer; dynamic programming; amortized analysis; graph algorithms; shortest paths; network flow; computational geometry; number-theoretic algorithms; polynomial and matrix calculations; caching; and parallel computing.This course was also taught as part of the Singapore-MIT Alliance (SMA) programme as course number SMA 5503 (Analysis and Design of Algorithms).Subjects

algorithms | efficient algorithms | sorting | search trees | heaps | hashing | divide-and-conquer | dynamic programming | amortized analysis | graph algorithms | shortest paths | network flow | computational geometry | number-theoretic algorithms | polynomial and matrix calculations | caching | parallel computingLicense

Content within individual OCW courses is (c) by the individual authors unless otherwise noted. MIT OpenCourseWare materials are licensed by the Massachusetts Institute of Technology under a Creative Commons License (Attribution-NonCommercial-ShareAlike). For further information see https://ocw.mit.edu/terms/index.htmSite sourced from

https://ocw.mit.edu/rss/all/mit-allcourses.xmlAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadata6.046J Design and Analysis of Algorithms (MIT)

Description

Techniques for the design and analysis of efficient algorithms, emphasizing methods useful in practice. Topics include sorting; search trees, heaps, and hashing; divide-and-conquer; dynamic programming; greedy algorithms; amortized analysis; graph algorithms; and shortest paths. Advanced topics may include network flow, computational geometry, number-theoretic algorithms, polynomial and matrix calculations, caching, and parallel computing.Subjects

sorting | search trees | heaps | hashing | divide and conquer | dynamic programming | greedy algorithms | amortized analysis | graph algorithms | shortest pathsLicense

Content within individual OCW courses is (c) by the individual authors unless otherwise noted. MIT OpenCourseWare materials are licensed by the Massachusetts Institute of Technology under a Creative Commons License (Attribution-NonCommercial-ShareAlike). For further information see https://ocw.mit.edu/terms/index.htmSite sourced from

https://ocw.mit.edu/rss/all/mit-allcourses.xmlAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadata6.856J Randomized Algorithms (MIT)

Description

This course examines how randomization can be used to make algorithms simpler and more efficient via random sampling, random selection of witnesses, symmetry breaking, and Markov chains. Topics covered include: randomized computation; data structures (hash tables, skip lists); graph algorithms (minimum spanning trees, shortest paths, minimum cuts); geometric algorithms (convex hulls, linear programming in fixed or arbitrary dimension); approximate counting; parallel algorithms; online algorithms; derandomization techniques; and tools for probabilistic analysis of algorithms.Subjects

Randomized Algorithms | algorithms | efficient in time and space | randomization | computational problems | data structures | graph algorithms | optimization | geometry | Markov chains | sampling | estimation | geometric algorithms | parallel and distributed algorithms | parallel and ditributed algorithm | parallel and distributed algorithm | random sampling | random selection of witnesses | symmetry breaking | randomized computational models | hash tables | skip lists | minimum spanning trees | shortest paths | minimum cuts | convex hulls | linear programming | fixed dimension | arbitrary dimension | approximate counting | parallel algorithms | online algorithms | derandomization techniques | probabilistic analysis | computational number theory | simplicity | speed | design | basic probability theory | application | randomized complexity classes | game-theoretic techniques | Chebyshev | moment inequalities | limited independence | coupon collection | occupancy problems | tail inequalities | Chernoff bound | conditional expectation | probabilistic method | random walks | algebraic techniques | probability amplification | sorting | searching | combinatorial optimization | approximation | counting problems | distributed algorithms | 6.856 | 18.416License

Content within individual OCW courses is (c) by the individual authors unless otherwise noted. MIT OpenCourseWare materials are licensed by the Massachusetts Institute of Technology under a Creative Commons License (Attribution-NonCommercial-ShareAlike). For further information see https://ocw.mit.edu/terms/index.htmSite sourced from

https://ocw.mit.edu/rss/all/mit-allcourses.xmlAttribution

Click to get HTML | Click to get attribution | Click to get URLAll metadata

See all metadata