Electrical Engineering
 
Welcome Biography Research Teaching Publications Awards
Lab Professional Activities Research Projects Links
 
 

資料結構

Data Structures

Fall 2019

 

Instructor: 顏嗣鈞
E-mail:  hcyen(_at_)ntu.edu.tw

Time:  9:10-12:00 AM, Monday

Place: Room BL-112

Office phone: (02) 3366 3581

Office hours: by appointment

TA:  

(1) 顏玓德 博理館606室 bottlebottle13@gmail.com 

                      (02) 33663700 ext 6606

(2) 吳治緯  明達館 531室  asd24372025@gmail.com

                     (02) 3366-3662


Announcements

       顏玓德 博理館606室  11/7 (四) 2:00 - 5:00 PM

      吳治緯 明達館 531室  11/8 (五) 9:00 - 12:00 AM

      顏嗣鈞 計算機及資訊網路中心二樓220  11/8 () 2:30 - 5:00 PM

 


Class Notes:

 

Topics

    PRELIMINARIES Introduction.  Asymptotic Notations. Algorithm Analysis.  
  ELEMENTARY STRUCTURES

Arrays vs. Pointers. Abstract data types. Stacks. Queues. Lists. Tree operations. Tree representations. Tree traversals.  Binary trees.

  SEARCH TREES, BALANCED SEARCH TREES

AVL trees. 2-3-4 trees. B-trees. Red-black trees. Binomial trees. Splay trees.    Top-down splay trees.  Skip lists,  and more.

  HEAPS

Priority queues. Binary heaps. Binomial heaps. Fibonacci heaps. Min-max heaps. Leftist heaps. Skew heaps.

  HASHING

Hash tables.  Chaining. Open addressing. Collision handling. Universal hashing. Perfect hashing. 

  DISJOINT SET UNION/FIND

Set operations. Set representations. Union-find. Path compression.

  SORTING

Insertion sort. Selection sort. Quicksort. Heapsort. Mergesort. Shellsort. Lower bound of sorting.

  DATA STRUCTURES FOR STRINGS Tries. Compressed tries.  Suffix trees. Suffix arrays.
  GRAPH DATA STRUCTURES/ALGORITHMS

Graph operations. Graph representations. Basic graph algorithms. Algorithm design techniques. 

SUPPLEMENTARY MATERIALS: AMORTIZED ANALYSIS Amortized complexity. Potential method. Amortized analysis

 

 

 

Textbook: There is no required textbook for this class.  There are some relevant and useful books and materials:

 


Grading:  

  • Homework/Prog. Assignment(s): 20-30%

  • Midterm exam: 30-40%

  • Final exam:  30-40% 

 

CHEATING: With the exception of group assignments, the work (including homework, programming assignments, tests) must be the result of your individual effort. This implies that one student should never have in his/her possession a copy of all or part of another student's homework. It is your responsibility to protect your work from unauthorized access. Academic dishonesty has no place in a university, in particular, in NTUEE. It wastes our time and yours, and it is unfair to the majority of students. Any form of cheating will automatically result in a failing grade in the course and will be reported to the Dean's office.

.