Search

Filter

  • Advanced Filters:

  • to
  • Specific Data Sources:

    All Edit

    Select All  |  Select None

Reset filters

Motivating Data Structures with Caching Internet Stock Data David B. Sher Math/Stat/CMP Department, Nassau Community College Garden City NY 11530 USA 011-516-572-7387 sherd@ncc.edu ABSTRACT Caching internet data is an application that illustrates data structure speed. I have developed a sequence of assignments for teaching about lists, hash tables and trees using caches for internet sourced stock prices. 2. Internet Application Categories and Subject Descriptors E.1 [Data Structures] Lists,Stacks and Queues, and F.2.2 [Nonnumerical Algorithms and Problems] Sorting and Searching, General Terms: Algorithms, Performance, Design, Theory.. Keywords: Analysis of Algorithms, Data Structures, Computer ScienceEducation 1. INTRODUCTION The typical data structures course (CS103 in the ACM Computer Science Curriculum [1]) introduces properties of data structures, particularly data structure best worst and average case speed. The purpose of programming projects in data structures is to illustrate data structure speed for differing data set sizes. A cache is particularly suitable for studying speed based on size because caches change size automatically. Caches improve the performance of many practical programs. Until now, I gave assignments that were largely abstract on this topic. For example, a typical assignment would: ¢ Read a list of words from a file. ¢ Store them in an unsorted linked list, sorted linked list, hash table, search tree and balanced search tree. ¢ Read words from a second file. ¢ Find out for each word in the second file how long each search took, whether each search was successful, how long the best, worst, and average search took for each data structure. A better assignment would have an apparent connection to real world programs but still illustrate the same concepts. This led me to memory caching for internet data. A cache stores data that otherwise would require a long time to access. In our application, the cache rapidly accesses historical stock prices originally from the internet. A cache is essentially a searchable dataset that can be implemented by any of these data structures: unsorted list, sorted list, hash table, search tree, balanced search tree, and a host of other tree based data structures. Hence, I developed a new set of data structures programming assignments based on an internet memory cache. Copyright is held by the author/owner(s). ITiCSE ™06, June 26 “28, 2006, Bologna, Italy. ACM 1-59593-055-8/06/0006. Figure 1 Internet Stock Data Application with Cache Statistics The internet application (figure 1) is designed to display historical stock data acquired from the finance.yahoo.com website. It was adapted from a tool I developed to teach mathematics students about mathematical modeling. 3. Internet Caching Assignments These are the internet caching assignments (in short): 1. Add a cache, implemented as an unsorted list, to the application. Report whether each stock data set is acquired from the cache or the internet in the cache output TextArea. 2. Add another cache implemented as a sorted list. Report for each cache whether each stock data set is acquired from the cache or internet, the number of comparisons needed for each cache and the total comparisons for all the data sets for each. 3. Add another cache implemented as a hash table. Report for each cache whether each stock data set is acquired from the cache or internet, the number of comparisons needed for each cache and the minimum, maximum, and average number of comparisons for all the data sets. 4. Add another cache implemented as a search tree, otherwise same as previous. 5. Add another cache implemented as a balanced tree, otherwise same as previous. 4.

Page 1 of 1

Page 1 of 1

Toggle back to continuous viewing mode

/lp/association-for-computing-machinery/motivating-data-structures-with-caching-internet-stock-data-IKf8nc2KB7
Welcome to DeepDyve! Rent Premier Research Articles and Save Up to 90%

Learn more

Free Article

Bookmark

Motivating data structures with caching internet stock data

Sher, David B.
ACM SIGCSE Bulletin , Volume 38 (3)
Association for Computing MachinerySep 26, 2006

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