Search

Filter

  • Advanced Filters:

  • to
  • Specific Data Sources:

    All Edit

    Select All  |  Select None

Reset filters

Beginners Program Web Page Builders and Verifiers Martha J. Kosa Tennessee Technological University Box 5101 Cookeville, TN 38505 +l (931) 372-3579 mjkosa@tntech.edu Tim Bemers-Lee started the now ubiquitous Web phenomenon in 199 1. Students enjoy using Web browsers and often build their own Web pages. ˜To ensure consistent appearance when viewed in different browsers, they may send their pages to a validation site, to verify standard HTML usage. These validators are parsers, which help to compile student programs. Our main focus is on the data structures course, using a traditional high-level programming language, and our students write programs which verify existing Web pages or generate sets of new Web pages as outputs. The outputs then become inputs to another program, i.e., a browser. Hyperlinks connect the output files. Verifying and generating Web pages are realistic uses of data structures. The Web can then serve as a unifying course theme. A well-chosen theme can maintain student interest, because the students can see practical uses for course topics and connections among seemingly unrelated areas. In our data structures class, we cover the usual stacks, queues, lists, binary search trees, and multiway B-trees. We discuss and compare alternative implementations. We may ask the students to implement new data structures. We now describe assignments that show applications of standard data structures to the Web. The students use stacks to translate between formatted text, representing arbitrarily nested ordered and/or unordered lists, and HTML code. Thus, they simulate parts of a browser and an HTML-aware word processor. The students can use queues to store the items in the lists for additional processing. They can use general lists for rearranging the items. This demonstrates possible interactions between data structures because a stack can store information about queues or general lists. The binary tree is the students ™ first nonlinear data structure. They study the traditional preorder, inorder, and postorder traversals, and learn how to build binary search trees, which usually have faster search times than unordered Permission to make digital or hard copies of alI or part of this work for pelSON3l Or classroom use IS granted without fee provided that copies are not made or distributed for profit or commercfal advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish. to post on servers or to redistribute to lists, requires prior specific perm~sswx~ and/or a lee. ITiCSE ˜99 6/99 Cracow, Poland 0 1999 ACM l-581 13.087.2/99/0005...$5.00 structures. The students can then complete a program to construct a set of formatted Web pages corresponding to an input file. The students build a binary search (or AVL) tree to help in constructing the set. This assignment illustrates the power of recursion because a small recursive function can generate many pages. Student-generated pictures can easily be incorporated. The students study n-ary trees next, and can then complete a program to produce a set of Web pages corresponding to an indented input file. The students build an nary tree to help in constructing the set of pages, requiring the implementation and use of a new data structure. They practice with hierarchies, such as course catalogs, and can again appreciate recursion. Here we describe more ideas for assignments related to sorting, trees, graphs, and hashing. When students visit Web pages, the pages get œhits . System log tiles keep statistics on the number of hits. Sorting is used to rank a site ™s pages according to their numbers of hits. The students can write a program to read a log file and produce a Web page containing the ranking in graphical form. Using trees, the students can produce an index for a set of Web pages, given a starting page. If a given page has links, the files corresponding to those links are processed. The World-Wide Web can be viewed as a graph, where the directed edges are the hyperlinks between Web pages. The students can build a minimum spanning tree for a set of Web pages. The students can compute the shortest path from one page to another. They can perform depth-fist and breadth-first traversals for a set of pages to ensure that all are visited systematically. A hash table can be used to construct a basic search engine. Students need to understand the World Wide Web and traditional concepts from data structures. We presented some progr amming assignments, which use the Web to reinforce course concepts. In the assignments, students generate Web pages and/or verify their correctness. A browser can help with debugging.

Page 1 of 1

Page 1 of 1

Toggle back to continuous viewing mode

/lp/association-for-computing-machinery/beginners-program-web-page-builders-and-verifiers-hSJgrN0KtV
Welcome to DeepDyve! Rent Premier Research Articles and Save Up to 90%

Learn more

Free Article

Bookmark

Beginners program Web page builders and verifiers

Kosa, Martha J.
ACM SIGCSE Bulletin , Volume 31 (3)
Association for Computing MachinerySep 1, 1999

More Info

More Like This Article

View All dataSource[]=actageo&dataSource[]=aspet&dataSource[]=aaos&dataSource[]=aacc&dataSource[]=aacr&dataSource[]=aea&dataSource[]=aip&dataSource[]=ajnr&dataSource[]=ams&dataSource[]=aps_physical&dataSource[]=appi_book&dataSource[]=appi_journal&dataSource[]=apha&dataSource[]=asip&dataSource[]=asm&dataSource[]=asn&dataSource[]=aspb&dataSource[]=avs&dataSource[]=annual_reviews&dataSource[]=arxiv&dataSource[]=acm&dataSource[]=berghahn&dataSource[]=cabi&dataSource[]=clinical_trials&dataSource[]=dailymed&dataSource[]=degruyter&dataSource[]=du_press&dataSource[]=esa&dataSource[]=eu_press&dataSource[]=elsevier&dataSource[]=emerald&dataSource[]=ejtr&dataSource[]=emea&dataSource[]=epo&dataSource[]=faseb&dataSource[]=gsa&dataSource[]=health_affairs&dataSource[]=hindawi&dataSource[]=imanager&dataSource[]=imedpub&dataSource[]=informa_healthcare&dataSource[]=informs&dataSource[]=iop&dataSource[]=iucr&dataSource[]=iospress&dataSource[]=jbjs&dataSource[]=leftcoast&dataSource[]=lu_press&dataSource[]=mesharpe&dataSource[]=mary_ann_liebert&dataSource[]=medline&dataSource[]=mit_press&dataSource[]=nature&dataSource[]=oxford&dataSource[]=pier_professional&dataSource[]=pnas&dataSource[]=portlandpress&dataSource[]=psyc_articles&dataSource[]=psyc_books&dataSource[]=psyc_critiques&dataSource[]=plos_journal&dataSource[]=pubmed_central&dataSource[]=rsna&dataSource[]=rockefeller&dataSource[]=rcn&dataSource[]=ria&dataSource[]=rsc&dataSource[]=sage&dataSource[]=spie&dataSource[]=springer_journal&dataSource[]=springer&dataSource[]=taylor_francis&dataSource[]=aps&dataSource[]=the_scientist&dataSource[]=uc_press&dataSource[]=uspto_abstract&dataSource[]=wiley&dataSource[]=pct

Browse: Subject Areas | Journals | Publishers

Sign Up for a DeepDyve Account

Bookmark an Article

To bookmark an article, please log in first, or sign up for a DeepDyve account if you don't already have one.

OK

Subscribe to Journal Email Alerts

To subscribe to email alerts, please log in first, or sign up for a DeepDyve account if you don't already have one.

OK

Thank you for renting with DeepDyve

Your PayPal account has been charged $2.99. You now have access to the full text of this article. A rental receipt has also been sent to your email address.

Your credit card has been charged $2.99. You now have access to the full text of this article. A rental receipt has also been sent to your email address.

OK

New! You can now keep track of new articles from ACM SIGCSE Bulletin on your personalized homepage! Learn more

PDF Download — Not Available

Thanks for your interest in purchasing the PDF. Your request has been noted and we will work with our publisher partner to discuss enabling this feature.

In the meantime, you can get the PDF by visiting the publisher site.

Thank you for purchasing with DeepDyve

Your PayPal account has been charged $.

Your credit card has been charged $.

You can now download this article. A purchase receipt has also been sent to your email address.

Download This Article or I'm done with my download

Print Page — Not Available

Thanks for your interest in printing individual pages. Your request has been noted and we will work with our publisher partner to discuss enabling this feature.

In the meantime, you can get the PDF by visiting the publisher site.

Thank you for printing with DeepDyve

Your PayPal account has been charged $0.

Your credit card has been charged $0.

You can now print this article. A purchase receipt has also been sent to your email address.

Print the Selected Pages or I'm done with my printing

Please refresh to generate a new download link

Your article download link has expired. Please refresh this page to obtain a new download link and try again.

Follow a Journal

To get new article updates from a journal on your personalized homepage, please log in first, or sign up for a DeepDyve account if you don't already have one.

OK