CS 130A (Fall 2009)
Data Structures and Algorithms

Computer Science Department
University of California, Santa Barbara

  • Instructor
  • Dr. Teofilo F. Gonzalez
    Office: 2119 Harold F. Frank Hall
    Phone (until 10/30/2009): 893-3849
    Phone (after 10/30/2009 leave message at): (805) 893-4321
    Office hours: M: 1:00 pm - 2:00 pm and W: Noon - 1:00 pm
    E-mail: teo@cs.ucsb.edu

  • Teaching Assistant
  • Vineeth Kashyap
    Office: Phelps 1409c and/or 1413B (it is the same room)
    Phone (until 10/30/2009): 893 - 8588
    Office Hours: T 11:15 am - 12:15 pm and Th 1:00 pm - 2:00 pm
    E-mail: vineeth@cs.ucsb.edu

  • Course Rules
  • The Course Schedule
  • Course Goals
  • Learn data structures and algorithms to solve problems efficiently. The data structures (for well-known ADTs) are: tries, heaps (and their variations), hash tables, height-balanced binary search trees, B-trees, reverse trees (union-find), etc. Basic graph algorithms are introduced. The complexity and performance of the resulting algorithm will be investigated theoretically and empirically. Discussion of sorting algorithms and their complexity, and lower bounds for sorting.

  • News
  • Discussion sessions starts on Friday September 25, 2009. It is very important that you attend all the Lectures and Discussion Sessions. It is very important that you attend all the Lectures and Discussion Sessions.
  • Topics covered so far:
  • Tentative list of topics to be covered:
  • Introduction
  • Correctness, time and space complexity
  • Dictionary ADT (Insert, Delete, and Membership)
  • Sequential Representation (quick)
  • Linked Representation (quick)
  • Trie Representation
  • Hash Table Representation
  • Priority Queues ( Insert and Delete-Min ).
  • Partially ordered tree ( heaps )
  • Min-Max Heaps and other variations
  • Generalized Dictionaries ( Insert, Delete, Member and Min )
  • Binary Search Trees
  • Red-Black Trees.
  • Concatenation and Split operations.
  • Disjoint Set Union ( Union (Merge) and Find )
  • Representations and Algorithms
  • Reversed trees, weighted union and path compression.
  • Applications
  • Dictionaries in Auxiliary Storage
  • B-trees.
  • Sorting
  • Quicksort, heapsort, merge sort, bin sort and radix sort.
  • Lower bound for sorting.
  • Graphs
  • Graph representations
  • DFS and BFS traversals.
  • Algorithms
  • Under Construction DO NOT CLICK HERE
  • Total number of visitors to this page, since 4/1/2003, is .