Lập trình C nâng cao - Fit Lec 2 (HUST) GV.AnhTT
正在生成预览...
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.
描述
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
AI 摘要
- 文档名称
- Lập trình C nâng cao - Fit Lec 2 (HUST) GV.AnhTT
- 学校 / 课程
- Đại học Bách khoa Hà Nội · Lập trình C
- 作者(文档中)
- AnhTT
- 内容
- 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.
- 目录
- 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
- 页数
- 7 页
- 上传者
- lienhejb
常见问题
此文档免费吗?
是的。“Lập trình C nâng cao - Fit Lec 2 (HUST) GV.AnhTT”是免费的 — 只需登录并点击“下载”即可获取原始文件。
这份文档有多少页?
该文档共有 7 页,适用于课程 Lập trình C。您可以在下载前进行在线预览。
我可以在下载前预览吗?
是的。您可以通过在线阅读器直接在本页面预览此文档,然后再决定是否下载。
Lập trình C nâng cao - Fit Lec 2 (HUST) GV.AnhTT
正在生成预览...
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
- 学校 / 课程
- Đại học Bách khoa Hà Nội · Lập trình C
- 作者(文档中)
- AnhTT
- 内容
- 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.
- 目录
- 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
- 页数
- 7 页
- 上传者
- lienhejb
评论 (0)
暂无评论。快来抢沙发吧!
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)
评论 (0)
暂无评论。快来抢沙发吧!