Skip to main content

Cấu trúc dữ liệu và giải thuật_VNPT

Enrollment in this course is by invitation only

VỀ MÔN HỌC NÀY!

Xin chào tất cả các bạn!

Các bạn thân mến, các bạn đang bắt đầu làm quen với môn học Cấu trúc dữ liệu và giải thuật trong chương trình Đại học FUNiX dành cho cán bộ, nhân viên VNPT. Để học được môn Cấu trúc dữ liệu và giải thuật trước tiên bạn cần có kiến thức cơ bản về kỹ thuật lập trình C#, đây là điều kiện cần để giúp các bạn có thể cài đặt được các cấu trúc dữ liệu, các thao tác trên cấu trúc dữ liệu và các thuật toán trong chương trình học.

Môn học Cấu trúc dữ liệu và giải thuật cung cấp cho bạn sự hiểu biết về cấu trúc dữ liệu và giải thuật (thuật toán), nắm được một số cấu trúc dữ liệu tuyến tính (linear) và phi tuyến (non-linear), đồng thời triển khai một số giải thuật phổ biến thường dùng trong phần mềm máy tính như tìm kiếm, sắp xếp. Bên cạnh đó, điều quan trọng nhất bạn cần cố gắng lĩnh hội là tư duy về thiết kế cài đặt các cấu trúc dữ liệu giải thuật phù hợp với các vấn đề/bài toán cụ thể bạn sẽ gặp trong công việc tại doanh nghiệp. 

Môn học này là một trong những môn học cơ bản của ngành công nghệ thông tin, sẽ là thực sự khó khăn cho bất kỳ người học nào nếu không có khả năng tự học cao và dành cách tiếp cận tích cực. Hãy nỗ lực, bền bỉ, chắc chắn các bạn sẽ thành công!


ĐỐI TƯỢNG THAM GIA

- Cán bộ nhân viên thuộc VNPT mong muốn bổ sung kiến thức nền tảng, nâng cao kỹ năng về công nghệ thông tin hướng tới công việc của kỹ sư phần mềm thích ứng với sự thay đổi của công nghệ số đang vận động và ngày một phát triển.

- Học viên cần trang bị trước kiến thức cơ bản vê lập trình để tiếp thu tốt các kiến thức lý thuyết cũng như có khả năng vận dụng để làm bài tập thực hành.


MỤC TIÊU MÔN HỌC:

Sau khi học xong môn này, học viên sẽ đạt được các chuẩn kiến thức, kỹ năng đầu ra như sau:

  1. Trình bày được khái niệm cơ bản về cấu trúc dữ liệu và giải thuật
  2. Phân tích được cách biểu diễn một số giải thuật cơ bản (dùng giả mã hoặc diagram).
  3. Cài đặt giải thuật sắp xếp nổi bọt bằng C#
  4. Trình bày được cấu trúc dữ liệu Danh sách và Kiểu dữ liệu trừu tượng (ADT)
  5. Phân tích được mối liên hệ giữa cấu trúc dữ liệu, giải thuật trong việc viết một chương trình máy tính.
  6. Cài đặt thuật toán Selection Sort, Insertion Sort sử dụng C#
  7. Trình bày được khái niệm của tìm kiếm tuần tự
  8. Phân biệt được sự khác nhau khi thực hiện tìm kiếm trên một danh sách đã được sắp xếp và chưa được sắp xếp (Bao gồm cả tìm kiếm nhị phân)
  9. Ứng dụng thuật toán sắp xếp và tìm kiếm đối với mọi kiểu đối tượng
  10. Trình bày được khái niệm về đệ quy và nguyên lý mà máy tính sử dụng để thực hiện đệ quy
  11. Phân biệt được cách giải bài toán bằng đệ quy và phương pháp lặp thông thường
  12. Giải quyết được bài toán sử dụng đệ quy và cài đặt đệ quy trên C#
  13. Trình bày được cấu trúc dữ liệu, các operations của Linked List và lưu trữ móc nối tuyến tính
  14. Phân biệt được lưu trữ tuần tự tuyến tính và lưu trữ móc nối tuyến tinh
  15. Trình bày được khái niệm của ngăn xếp và hàng đợi
  16. Trình bày được cấu trúc dữ liệu cây, cây nhị phân và cây tìm kiếm nhị phân
  17. Liệt kê được các phương pháp viếng thăm theo thứ tự (breadth first), left root right (in order), root left right (pre order), left right root (post order)
  18. Phân biệt được tìm kiếm tuần tự và tìm kiếm trên cây nhị phân, độ phức tạp của các hoạt động trên cây tìm kiếm nhị phân
  19. Phân tích được cân bằng cây nhị phân và lợi ích khi tìm kiếm trên cây cân bằng
  20. Trình bày được khái niệm và cách thức biểu diễn đồ thị, các phương pháp cho bài toán tìm đường đi ngắn nhất.
  21. Cài đặt thuật toán Quick Sort, Shell Sort, Radix Sort, Merce Sort bằng C#
  22. Cài đặt thuật toán Heap sort bằng C#
  23. Phân tích được hashing và cách tìm kiếm dựa trên giá trị khóa, các phương pháp để giải quyết xung đột trên hashtable
  24. Cài đặt linked list, ngăn xếp, hàng đợi, cây tìm kiếm nhị phân bằng C#
  25. Ứng dụng linked list, ngăn xếp, hàng đợi vào bài toán cụ thể
  26. Ứng dụng đồ thị để giải bài toán thực tế.

THÔNG TIN VỀ MÔN HỌC

Tên môn học:

Cấu trúc dữ liệu và giải thuật

Mã môn học 

 CSD202x_01-A_VN_PT

Số tín chỉ:

 3

Thời gian học:

6 tuần



TRẢI NGHIỆM HỌC TẬP

Môn học gồm 4 phần,10 bài học. Mỗi bài sẽ có các video, bài đọc yêu cầu các bạn phải xem kỹ, các text theo bài học và text tổng kết của bài học là những chỉ dẫn quý báu mà các bạn cần nghiên cứu. Kết thúc mỗi bài học các bạn trả lời các câu hỏi quiz và làm các bài exercise. Sau mỗi phần, các bạn sẽ hoàn thành các bài project, việc này giúp các bạn nắm vững kiến thức của bài học và nâng cao được kỹ năng thực hành.

Trong quá trình học tập, nếu các bạn có bất cứ câu hỏi nào hãy chủ động kết nối trực tiếp với Mentors để được giải đáp và chia sẻ về những khúc mắc về nội dung môn học.


ĐỒNG THIẾT KẾ KHÓA HỌC

            Phan Thị Hà

  • Trình độ chuyên môn: Tiến sĩ chuyên ngành Hệ thống thông tin, Học viện Công nghệ Bưu chính Viễn Thông; Thạc sĩ chuyên ngành Đảm bảo toán cho hệ thống tính toán, Đại học Quốc Gia.                                     
  • Nghề nghiệp: Giảng viên
  • Nơi công tác: Khoa CNTT1, Học viện Công nghệ Bưu chính Viễn Thông
  • Kinh nghiệm: Có 24 năm kinh nghiệm phát triển phần mềm và đào tạo.
  • Facebook: https://www.facebook.com/phanthiha.ptit

          Ngô Tùng Sơn

  • Trình độ chuyên môn: Tốt nghiệp  khóa học máy tính, Đại học Lorraine Pháp
  • Nghề nghiệp: Giảng viên chương trình cử nhân quốc tế FPT-Greenwich của Đại học FPT
  • Nơi công tác: Đại học FPT
  • Kinh nghiệm: Từng làm việc tại phòng thí nghiệm Đại học Lorraine và Panasonic tại Việt Nam; Đồng sáng lập Technical manager của công ty cổ phần Công nghệ và Thương mại Hưng Vương (hvtec.vn)
  • Facebook: http://www.facebook.com/NgoTungSon


          Đặng Kim Thi

  • Trình độ chuyên môn: Cử nhân kỹ sư phần mềm
  • Nghề nghiệp: Giảng viên 
  • Nơi công tác: FPT - APTECH
  • Kinh nghiệm: 10+ năm giảng dạy tại FPT - APTECH, thành thạo các công nghệ và ngôn ngữ: C, C#, Java, HTML, CSS, Javascript, Bootstrap, jQuery, PHP, Laravel, .NET framework, SQL, MySQL; 15+ tham gia vào các dự án phát triển phần mềm cho các thị trường trong và ngoài nước (thị trường chính là Nhật Bản)
  • Facebook: https://www.facebook.com/thidk

     FUNIX WAY

      Mục đích của các chương trình học theo FUNiX way là người học tự tin và thành thạo trong môi trường số, có thể kiếm được thu nhập bằng chính kiến thức mà mình theo học hoặc để làm công việc tốt hơn, có động lực và khả năng nâng cao tay nghề, có thể làm thành viên dự án chuyên môn và tham gia cộng đồng nghề như một thành viên có trách nhiệm.


      NGUỒN HỌC LIỆU

      Khóa học MOOC này được cung cấp trên nền tảng UdemyCourseratutorialspointgeeksforgeeks. Đây là nền tảng cung cấp các khóa học trực tuyến đại chúng mở được đánh giá rất cao trong các nền tảng MOOC.

     Việc liệt kê nguồn trên đây không nhất thiết hàm ý rằng FUNiX có sự hợp tác chính thức với chủ sở hữu của nguồn.


KÊNH PHẢN HỒI

FUNiX sẵn sàng đón nhận và trao đổi về mọi ý kiến góp ý, phản hồi liên quan đến học liệu qua email program@funix.edu.vn