























































Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
The fundamental concepts of computer science, focusing on algorithms, distributed systems, and clock synchronization. It covers various definitions of computer science, the importance of algorithms, and their applications. The document also delves into distributed systems, their significance, and the challenges they pose, particularly in clock synchronization. It discusses various algorithms for clock synchronization and their complexities.
Typology: Study notes
1 / 63
This page cannot be seen from the preview
Don't miss anything!
























































Presentation to CPSC 181 October 2008 Prof. Jennifer L. Welch Parasol Lab & Department of Computer Science Texas A&M University
Centrality of notion of algorithm What is an algorithm? Designing and analyzing algorithms Understanding lower bounds and impossibility results Distributed systems Some sample distributed algorithms
Algorithm Limitations of Execution of Communication of Analysis of Discovery of Representation of theory of computation,… architecture, operating systems, networks,… software engineering,… algorithmics,… artificial intelligence,… data structures, programming language design,…
Schneider & Gersting's Diagram Algorithmic Foundations of CS The Hardware World The Virtual Machine The Software World Applications Social Issues design & analysis of algorithms,… computer organization,… assemblers, operating systems… programming langs, compilers,… artificial intelligence,…
C.A.R. Hoare: the central core of computer science is "the art of designing efficient and elegant methods of getting a computer to solve problems" D. Reed: Identifies 3 main themes:
Finding a Tour: Nearest Neighbor
There exist formal methods
problem size running time faster alg, slower machine slower alg, faster machine
text, characters, patterns strings shapes, regions, boundaries polygons sites, positions, locations points network, circuit, web, relationship graph hierarchy, ancestor/descendants, taxonomy trees cluster, collection, committee, group, packaging, selection subsets arrangement, tour, ordering, sequence permutation Concrete Abstract