Lập trình C nâng cao - Fit Lec 2 (HUST) GV.AnhTT
- Pages
- 7
- Format
- Size
- 145 KB
- Trường
- Đại học Bách khoa Hà Nội
- Views
- 0
- Comments
- 0
- Lượt tải
- 0
Bài giảng về Symbol Tables và các cấu trúc dữ liệu lưu trữ cặp khóa-giá trị trong C, bao gồm các cách cài đặt từ mảng đơn giản, danh sách liên kết cho đến bảng ký hiệu tổng quát với con trỏ hàm. Tài liệu cung cấp ví dụ thực tế về ứng dụng trong điện thoại và bài tập liên quan.
Frequently asked questions
Is this document free?
Yes. “Lập trình C nâng cao - Fit Lec 2 (HUST) GV.AnhTT” is free — just sign in and click Download to get the original file.
How many pages is this document?
The document has 7 pages, for the course Lập trình C. You can preview it online before downloading.
Can I preview before downloading?
Yes. You can preview this document right on this page with the online reader, then decide whether to download.
- Document name
- Lập trình C nâng cao - Fit Lec 2 (HUST) GV.AnhTT
- School / Course
- Đại học Bách khoa Hà Nội · Lập trình C
- Author (in document)
- AnhTT
- Content
- Tài liệu này mô tả cấu trúc dữ liệu bảng ký hiệu, các phương pháp cài đặt khác nhau (mảng, danh sách liên kết, cây nhị phân), và cách xây dựng bảng ký hiệu tổng quát trong lập trình C. Nó cung cấp ví dụ về danh bạ điện thoại và các bài tập thực hành.
- Table of contents
- ADT
- Symbol Tables
- Example applications
- Elementary implementations
- Implementation
- API
- Quiz 1
- Using dynamic memory
- API
- Quiz 2
- Homework K53
- Generic symbol tables
- API
- Example
- Guide - creatSymbolTable function
- Pages
- 7 pages
- Uploaded by
- lienhejb
Generating preview...
Description
ADT Symbol Tables Key-value pair abstraction. Insert a value with specified key. Given a key, search for the corresponding value. Example: DNS lookup. Insert URL with specified IP address. Given URL, find corresponding IP address anhtt-fit@mail.hut.edu.vn dungct@it-hut.edu.vn http://www.mediafire.com/?n2yzyjnnn10 Example applications Can interchange roles: given IP address find corresponding URL Elementary implementations Binary search implementation: maintaining two parallel arrays of keys and values, keeping them in key-sorted order. It uses binary search for get. Linked list implementation. Both put and get take linear time per operation: to search for a key, we need to traverse its links; to put a key-value pair, we need to search for the given key. Binary search trees. Performance depend on the shape of tree. 1 Implementation Define a structure to store key-value pairs Example: phonebook typedef struct { long number; char name[80] } PhoneEntry; Using array for implementation Key-value pairs are stored in an ordered array Example: #define MAX_PHONE_NUMBER 1000 typedef struct { PhoneEntry entries[MAX_PHONE_NUMBER]; int total; } PhoneBook; The key is phone number and the value is person name API Quiz 1 Add an entry in the phone book void addPhoneNumber(long number, char * name, PhoneBook* book); NB: If the entry exists, the value should be overwritten. Write a program to add and search phone numbers in a phone book using an array for implementation Find an entry in the phone book char * getPhoneNumber(long number, const PhoneBook* book); returns null if the entry does not exist 2 Using dynamic memory API The memory to store the entries should be allocated dynamically according to the size of the phone book. typedef struct { PhoneEn
Lập trình C nâng cao - Fit Lec 2 (HUST) GV.AnhTT
Generating preview...
ADT Symbol Tables Key-value pair abstraction. Insert a value with specified key. Given a key, search for the corresponding value. Example: DNS lookup. Insert URL with specified IP address. Given URL, find corresponding IP address anhtt-fit@mail.hut.edu.vn dungct@it-hut.edu.vn http://www.mediafire.com/?n2yzyjnnn10 Example applications Can interchange roles: given IP address find corresponding URL Elementary implementations Binary search implementation: maintaining two parallel arrays of keys and values, keeping them in key-sorted order. It uses binary search for get. Linked list implementation. Both put and get take linear time per operation: to search for a key, we need to traverse its links; to put a key-value pair, we need to search for the given key. Binary search trees. Performance depend on the shape of tree. 1 Implementation Define a structure to store key-value pairs Example: phonebook typedef struct { long number; char name[80] } PhoneEntry; Using array for implementation Key-value pairs are stored in an ordered array Example: #define MAX_PHONE_NUMBER 1000 typedef struct { PhoneEntry entries[MAX_PHONE_NUMBER]; int total; } PhoneBook; The key is phone number and the value is person name API Quiz 1 Add an entry in the phone book void addPhoneNumber(long number, char * name, PhoneBook* book); NB: If the entry exists, the value should be overwritten. Write a program to add and search phone numbers in a phone book using an array for implementation Find an entry in the phone book char * getPhoneNumber(long number, const PhoneBook* book); returns null if the entry does not exist 2 Using dynamic memory API The memory to store the entries should be allocated dynamically according to the size of the phone book. typedef struct { PhoneEn
Read full document
- Document name
- Lập trình C nâng cao - Fit Lec 2 (HUST) GV.AnhTT
- School / Course
- Đại học Bách khoa Hà Nội · Lập trình C
- Author (in document)
- AnhTT
- Content
- Tài liệu này mô tả cấu trúc dữ liệu bảng ký hiệu, các phương pháp cài đặt khác nhau (mảng, danh sách liên kết, cây nhị phân), và cách xây dựng bảng ký hiệu tổng quát trong lập trình C. Nó cung cấp ví dụ về danh bạ điện thoại và các bài tập thực hành.
- Table of contents
- ADT
- Symbol Tables
- Example applications
- Elementary implementations
- Implementation
- API
- Quiz 1
- Using dynamic memory
- API
- Quiz 2
- Homework K53
- Generic symbol tables
- API
- Example
- Guide - creatSymbolTable function
- Pages
- 7 pages
- Uploaded by
- lienhejb
Comments (0)
No comments yet. Be the first!
Lập trình C nâng cao - Fit Lec 7 (HUST) GV.AnhTT
Lập trình C nâng cao - Fit Lec 8 (HUST) GV.AnhTT
Lập trình C nâng cao - Fit Lec 4 (HUST) GV.AnhTT
Lập trình C nâng cao - Fit Lec 5 (HUST) GV.AnhTT
Slide Lập trình C nâng cao - Fit Lec 11 (HUST) GV.AnhTT
K5 Bộ đề luyện thi Trạng Nguyên Tiếng Việt (NXB DHQG)
K2 Bộ đề luyện thi Trạng Nguyên Tiếng Việt (NXB DHQG)
K3 Bộ đề luyện thi Trạng Nguyên Tiếng Việt (NXB DHQG)
K4 Bộ đề luyện thi Trạng Nguyên Tiếng Việt (NXB DHQG)
K1 Bộ đề luyện thi Trạng Nguyên Tiếng Việt (NXB DHQG)
Comments (0)
No comments yet. Be the first!