Data Structures and Algorithms Computational Structures and Methods

  • Slides: 8
Download presentation
Data Structures and Algorithms Computational Structures and Methods in a 21 st Century Context

Data Structures and Algorithms Computational Structures and Methods in a 21 st Century Context Computer Science and Engineering 373 University of Washington CSE 373, S. Tanimoto Introduction - 1

Objectives Content: Learn specific techniques of data structures and algorithms. Skills and Habits: Practice

Objectives Content: Learn specific techniques of data structures and algorithms. Skills and Habits: Practice using computers and the Internet as tools, develop communication skills, work individually and work in groups. CSE 373, S. Tanimoto Introduction - 2

Vehicles • Web-based research. • Creating Java applets that become tools for understanding techniques

Vehicles • Web-based research. • Creating Java applets that become tools for understanding techniques and communicating about them. • Written and oral presentation. • Creating mathematical descriptions of data structures, algorithms, and behavior. CSE 373, S. Tanimoto Introduction - 3

Textbook Sartaj Sahni: Data Structures, Algorithms, and Applications in Java. Mc. Graw-Hill. This is

Textbook Sartaj Sahni: Data Structures, Algorithms, and Applications in Java. Mc. Graw-Hill. This is a strong text, sold at a relatively low price. Dr. Sahni has authored or co-authored a number of successful texts, including Horowitz & Sahni: Fundamentals of Data Structures (Computer Science Press, 1976). Note: The text has a “review” of Java, but does not cover Java’s graphics and applet features. Therefore, we’ll often rely on additional references and tutorials. CSE 373, S. Tanimoto Introduction - 4

Computing Skills We’ll Learn/Use • Writing HTML • Programming in Java, including creating Applets

Computing Skills We’ll Learn/Use • Writing HTML • Programming in Java, including creating Applets • Basic Unix skills for posting files on the web server CSE 373, S. Tanimoto Introduction - 5

Why Java? Best language for creating and sharing visual computing tools on the web.

Why Java? Best language for creating and sharing visual computing tools on the web. Close enough to C++ to be easily learned after CSE 143. Great support by textbooks, tutorials, and a wealth of online examples. Compilers and run-time environments are available without charge from Sun Microsystems, Inc. CSE 373, S. Tanimoto Introduction - 6

Communication Tools/Activities • Using search engines on the web to obtain technical information. •

Communication Tools/Activities • Using search engines on the web to obtain technical information. • Creating reports as web pages. • Creating self-explanatory demos with Applets. • Using a custom web-based textual communication tool: INFACT-FORUM. • Oral presentations. • Peer reviews. CSE 373, S. Tanimoto Introduction - 7

First Assignment • Do research using search engines on the web. • Work individually

First Assignment • Do research using search engines on the web. • Work individually • Each student answers a different question • Report results in a web page. • Learn or brush up on HTML, Unix skills, and get ready to post Java applets in future assignments. • Learn about an interesting data structure or algorithm and share this knowledge with the class via the web. • Demonstrate clear writing and clear thinking. • (See the assignment web page itself for details. ) CSE 373, S. Tanimoto Introduction - 8