- Implement implement implement: further develop ability to program in python
- Improve overall algorithmic thinking abilities
- Advance understanding of object oriented programming and abstract data types
What / When / Where
- What: Hack on data structures and algorithms; compare with industry implementation
- When: Thursdays at 3:00pm
- Where: Social Sciences or Blegen Hall 4th Floor
- email runck014[at]umn.edu to be added to invite
Linear Data Structures
- 2/15 -- post with resources
- Where: Social Sciences 423
- Summary: set up coding environment and implement linked list in python; goals: add data; remove data)
- 2/23 -- post with resources (new content for 2/15 post)
- Where: 4th floor Social Sciences, Brown Room
- Summary: complete implementing linked lists; implement reverse function and integrate function
- 3/2 -- post with resources
- Bubble sort
- Large list of algorithms and data structures with links to tutorials
- Princeton online algorithms book
- Quora article with useful organization of algorithms and data structures
- Wikipedia's list of data structures
- Top 10 algorithms for competitive programming
- Notes for A Practical Introduction to Data Structures Algorithms and Analysis
- Introduction to Algorithms 3rd Ed by Cormen et al. (most widely used book for upper level undergraduate algorithms courses such as CS 4041 at UMN)
- Partial summary of Introduction to Algorithms on one page
- Artificial Intelligence: A Modern Approach, Russel and Norvig. Book website. Code (Python).
With the rise of "big data" and easy-to-access distributed computing infrastructures through the cloud, geographic information systems users now have the opportunity to develop more sophisticated data to decision pipelines using these tools in domains as diverse as public health, agriculture, and environmental science.
A key barrier for many GIS users is a lack of knowledge surrounding how to interpret and effectively utilized and adapt algorithms and data structures combined with a general level of comfort in a code-based environment. This blog post serves as a entrance point to algorithms and data structures for GIS users with little or no background in the topic, and lays out a curriculum based on implementation and critical analysis of code compared to professional implementations.
This blog post is a product of the GIScientist algorithms and data structures study group at the University of Minnesota. As we progress through the curriculum, additional posts and content will be added.