Cấu trúc dữ liệu & Giải thuật - Tập 1
-
Giảng viên
Trần Duy Thanh -
Chủ đề
Công Nghệ Thông Tin
Số bài học | 70 |
Thời lượng | 21 giờ 5 phút |
Đối tượng | Mọi người |
Học viên | 2500 |
Giới thiệu khóa học
- Khóa học cung cấp kiến thức về Cấu trúc dữ liệu và giải thuật
- Cung cấp những cơ hội thực hành tạo ứng dụng CTD và Giải thuật với C++ ngay trong quá trình học
- Sau khi hoàn thành khóa học, học viên sẽ có kiến thức để tiếp tục học các môn khác nhau: Python, lập trình Java, lập trình Android, C#...
- Cài đặt cấu trúc dữ liệu và giải thuật bằng C++
- Hàm và đệ qui
- Các giải thuật tìm kiếm: Tuyến tính, nhị phân
- Các giải thuật sắp xếp: Bubble Sort, selection sort , quick sort...
- Danh sách liên kết: Đơn, đôi
- Stack và Queue
- Tree: Cây nhị phân tìm kiếm
- Cơ bản về đánh giá giải thuật
Lợi ích của khóa học
- Có được kiến thức toàn diện về ngôn ngữ lập trình C++, cấu trúc dữ liệu
- Là cơ sở để học tiếp các khóa: lập trình C#, lập trình java, lập trình Android, Python...
- Làm chủ được C++ sẽ giúp học viên dễ dàng tiếp thu các ngôn ngữ mới
- Có thể tham gia các dự án liên quan tới lập trình C++
- Có thể ứng dụng viết Blockchain
- Đặc biệt tạo tư duy logic lập trình tốt nhất
Yêu cầu của khóa học
Môi trường yên tĩnh
Phần 1: Bàn về Cấu trúc dữ liệu và Giải thuật
Bài 1: Mối tương quan giữa Cấu trúc dữ liệu và giải thuật
Bài 2: C++ và các ngôn ngữ triển khai Cấu trúc dữ liệu và giải thuật
Bài 3: Một số khái niệm cần chuẩn bị
Phần 2: Giải thuật đệ qui
Bài 4: Giới thiệu về hàm đệ qui và cơ chế hoạt động
Bài 5: LINEAR RECURSION (đệ qui tuyến tính)
Bài 6: TAIL RECURSION (đệ qui đuôi)
Bài 7: BINARY RECURSION (đệ qui nhị phân)
Bài 8: EXPONENTIAL RECURSION (đệ qui đa tuyến)
Bài 9: NESTED RECURSION (đệ qui lồng)
Bài 10: MUTUAL RECURSION (đệ qui tương hỗ)
Bài 11: Bài tập rèn luyện - Chuyển cơ số 10->2
Bài 12: Bài tập rèn luyện - Tổ hợp
Bài 13: Bài tập rèn luyện - Tháp hà nội
Bài 14: Các bài tập tự rèn luyện
Phần 3: Các giải thuật tìm kiếm
Bài 15: Cấu trúc dữ liệu và giải thuật tìm kiếm tương ứng
Bài 16: Giải thuật tìm kiếm tuyến tính trên mảng cơ sở
Bài 17: Giải thuật tìm kiếm tuyến tính trên mảng cấu trúc
Bài 18: Giải thuật tìm kiếm nhị phân trên mảng cơ sở
Bài 19: Giải thuật tìm kiếm nhị phân trên mảng cấu trúc
Bài 20: Bài tập rèn luyện - Tìm tuyến tính Mảng cơ sở
Bài 21: Bài tập rèn luyện - Tìm nhị phân Mảng cơ sở
Bài 22: Bài tập rèn luyện - Tìm kiếm Mảng cấu trúc
Bài 23: Các bài tập tự rèn luyện
Phần 4: Các giải thuật sắp xếp
Bài 24: Cấu trúc dữ liệu và giải thuật sắp xếp tương ứng
Bài 25: Bubble Sort - Lý thuyết
Bài 26: Bubble Sort - Triển khai
Bài 27: Bubble Sort - Chạy tay từng bước
Bài 28: Selection Sort - Lý thuyết
Bài 29: Selection Sort - Triển khai
Bài 30: Selection Sort - Chạy tay từng bước
Bài 31: Insertion Sort - Lý thuyết
Bài 32: Insertion Sort - Triển khai
Bài 33: Insertion Sort - Chạy tay từng bước
Bài 34: Interchange Sort - Lý thuyết
Bài 35: Interchange Sort - Triển khai
Bài 36: Interchange Sort - Chạy tay từng bước
Bài 37: Quick Sort - Lý thuyết
Bài 38: Quick Sort - Triển khai
Bài 39: Quick Sort - Chạy tay từng bước
Bài 40: Merge Sort - Lý thuyết
Bài 41: Merge Sort - Triển khai
Bài 42: Merge Sort - Chạy tay từng bước
Bài 43: Bài tập rèn luyện - Sắp xếp mảng cơ sở
Bài 44: Bài tập rèn luyện - Sắp xếp mảng cấu trúc
Bài 45: Các bài tập tự rèn luyện
Phần 5: Danh sách liên kết đơn- quản lý bằng pHead
Bài 46: Mảng và Danh sách liên kết
Bài 47: Khái niệm và cấu trúc dữ liệu của danh sách liên kết đơn
Bài 48: Cách tạo Node và danh sách liên kết đơn
Bài 49: Duyệt danh sách liên kết đơn
Bài 50: Chèn Node vào đầu danh sách liên kết đơn
Bài 51: Chèn Node vào cuối danh sách liên kết đơn
Bài 52: Chèn Node vào giữa danh sách liên kết đơn
Bài 53: Xóa Node khỏi danh sách liên kết đơn
Bài 54: Tìm kiếm trên danh sách liên kết đơn
Bài 55: Sắp xếp trên danh sách liên kết đơn
Bài 56: Hủy danh sách
Bài 57: Bài tập rèn luyện- danh sách liên kết kiểu cơ sở
Bài 58: Bài tập rèn luyện- danh sách liên kết kiểu cấu trúc
Bài 59: Các bài tập tự rèn luyện
Phần 6: Danh sách liên kết đơn- quản lý bằng pHead và pTail
Bài 60: Cấu trúc dữ liệu và cách tạo Node cho danh sách liên kết đơn
Bài 61: Duyệt danh sách liên kết đơn
Bài 62: Chèn Node vào đầu danh sách liên kết đơn
Bài 63: Chèn Node vào cuối danh sách liên kết đơn
Bài 64: Chèn Node vào giữa danh sách liên kết đơn
Bài 65: Xóa Node khỏi danh sách liên kết đơn
Bài 66: Tìm kiếm trên danh sách liên kết đơn
Bài 67: Sắp xếp trên danh sách liên kết đơn
Bài 68: Bài tập rèn luyện- danh sách liên kết kiểu cơ sở
Bài 69: Bài tập rèn luyện- danh sách liên kết kiểu cấu trúc
Bài 70: Các bài tập tự rèn luyện
Trần Duy Thanh
Thông tin giảng viên:Về sư phạm:
Tham gia giảng dạy từ năm 2009, thầy Trần Duy Thanh hiện là Thạc sĩ Khoa học Máy tính của các trường đại học lớn TP.HCM:
1) Đại Học Công Nghiệp TP.HCM.
2) Đại Học Công Nghệ Đồng Nai (Trưởng Bộ môn Công nghệ Phần mềm).
3) Đại Học Khoa Học Tự Nhiên TP.HCM - Trung Tâm Tin Học.
4) Đại Học Kinh Tế - Luật.
Ngoài công việc giảng dạy, thầy Trần Duy Thanh còn nắm giữ các chức vụ quan trọng và tham gia các dự án lớn của doanh nghiệp từ năm 2005, cụ thể:
- Nắm giữ chức vụ Giám đốc Chiến lược công ty Cổ Phần Hưng Gia Sài Gòn (từ 2014 đến 7/2016).
- Thầy Trần Duy Thanh còn đảm nhận vị trí Kỹ sư phần mềm (System Profiling) và tham gia nhiều dự án lớn của Công ty KIC (http://kicthermal.com).
Từ năm 2013 đến năm 2015, thầy Trần Duy Thanh tham gia làm Dự án khoa học cấp Đại Học Quốc Gia mang tên "Xây dựng hệ thống phân tích mạng xã hội theo chủ đề và ứng dụng vào mạng xã hội trong trường Đại học", mã số B2013-26-02. Dự án được xếp loại tốt, nghiệm