Lập trình, cấu trúc dữ liệu và thuật toán bằng câu đố python tuần 6 năm 2022

3] Chúng tôi có một danh sách các giá trị [17,98,89,42,67,54,89,25,38]. Giả sử chúng ta xây dựng một heap tối đa bằng cách bắt đầu với một heap trống và chèn từng giá trị từ danh sách vào heap, từ trái sang phải. Heap kết quả sau đó sẽ là

a] [98,67,89,38,42,54,89,17,25]
b] [98,89,67,42,17,89,54,25,38]
c] [98,89,89,67,54,42,38,25,17]
d] [98,89,67,17,42,54,89,25,38]

Answer[s] : 
a] [98,67,89,38,42,54,89,17,25]

[id quads=1]

4] Giả sử chúng ta chèn giá trị 97 vào heap được tạo trong câu hỏi trước. Heap kết quả sau đó sẽ là

Các ô có tài liệu khóa học chưa được cập nhật sẽ được đánh dấu bằng màu hồng, các lớp trước đây hơn một tuần trước sẽ bị ẩn để chúng tôi có thể tập trung vào các lớp hiện tại và tương lai, nhưng bạn có thể khôi phục chúng bằng cách nhấp vào nút 'Hiển thị quá khứ' ở trên,
Chưa bắt đầu, nhưng vui lòng sửa lại CS1010/IT5001 của bạn
[Steven cho rằng tất cả các bạn đã lấy
hoặc được miễn khỏi mô-đun này/các biến thể của nó,
i. e. , bạn có thể viết mã đơn giản bằng Python 3]

Đăng ký tại Kattis [ghi rõ họ tên như trong thẻ Matric],
đọc hướng dẫn cụ thể về Python 3 @ Kattis,
và giải Thẩm phán Trực tuyến [OJ] tùy chọn đã chọn
Vấn đề Tự đặt 0a [PS0a] [cấp độ CS1010/IT5001]
[giải quyết nhiều 'vấn đề tầm thường [nhiều vấn đề một lớp]' từ bộ này
---có thể theo dõi bởi Steven, gián tiếp nói với Steven
về lớp thô CS1010/IT5001 của bạn] Chưa bắt đầu PS0a. Các thử thách viết mã/Python dễ dàng
Ngoài. Thứ tư, 15 Tháng hai 23, 08. 00 giờ sáng
-01,
Thứ Tư trước Thứ Tư,
01 Tháng 3 Chưa bắt đầu, nhưng Steven đặt một PS0b dễ dàng khác
Đây là một thực hành hữu ích cho những người cũng tham gia IT5001 [sắp kết thúc]
Chưa Bắt Đầu PS0a. Các thử thách viết mã/Python dễ dàng
Quá hạn. Thứ tư, 22 Tháng hai 23, 07. 59 giờ sáng
[rõ ràng là không được chấm điểm]

PS0b. Các thử thách viết mã/Python dễ dàng
Ngoài. Thứ tư, 22 Tháng hai 23, 08. 00 giờ sáng
07,
Phiên 1
01+04 Mar T01+L01. it5003lab1. pdf
Giới thiệu,
Phân tích thuật toán,
kiểm tra tốc độ. chế độ py,
Đánh giá PS0a và PS0b,
thực hành. TBA
Thảo luận PS1 [thuật toán]
PS0b. Các thử thách viết mã/Python dễ dàng
Quá hạn. Thứ tư, 01 Tháng ba 23, 07. 59pm
[0. 5% — để tăng tốc quản trị viên]

PS1. Python cơ bản
Ngoài. Thứ tư, 01 Tháng ba 23, 08. 00 tối
Các nhiệm vụ dễ dàng hơn được giới thiệu trực tiếp trong bài giảng đầu tiên 08,
buổi 2
08+11 Lời nhắc tháng 3. Đọc các slide Bài giảng điện tử phân loại trước Bài giảng 2a
Ít nhất là cho đến slide 11-11, tốt hơn nữa

2a. Sắp xếp [Slide 1 đến 11-11]
[Re-]Giới thiệu thuật toán sắp xếp đơn giản hơn nhưng O[N^2] + Sắp xếp hợp nhất O[N log N]
Sắp xếpDemo. phiên bản py [O[N^2] + Sắp xếp hợp nhất O[N log N]]
, danh sách. sắp xếp [] hoặc được sắp xếp [danh sách]
Các vấn đề của Kattis được thảo luận hôm nay
TBA

Lời nhắc lật ngược lớp học lần cuối
Đọc slide Bài giảng điện tử sắp xếp nhất
trước Bài giảng 2c

2b. trì tụng. Phân tích thuật toán và sắp xếp
Phiên QnA bổ sung về bất cứ điều gì về Phân tích thuật toán
Phiên QnA bổ sung về bất cứ điều gì về sắp xếp, e. g. ,
chạm vào Đếm và Sắp xếp Cơ số,
hoặc các ứng dụng tiềm năng khác của phân loại
Các vấn đề của Kattis được thảo luận hôm nay
TBA

2c. Sắp xếp [Slide 11 đến 13-2 và 17 đến hết;
nhưng bỏ qua Slide 14 đến 16-2]
Đánh giá sắp xếp hợp nhất O[N log N]
Giới thiệu Sắp xếp nhanh không ngẫu nhiên O[N^2]
Giới thiệu Sắp xếp nhanh ngẫu nhiên dự kiến ​​O[N log N] [không phân tích]
Sắp xếpDemo. py [O[N log N] Sắp xếp hợp nhất + dự kiến ​​O[N log N] Sắp xếp nhanh ngẫu nhiên]
Các chuyên đề sắp xếp Bài giảng điện tử khác
Sắp xếp bài kiểm tra trực tuyến [trung bình]
T02+L02. it5003lab2. pdf
Sắp xếp [các] Ứng dụng,
Đánh giá thuật toán sắp xếp thông qua thử nghiệm nhỏ,
Bản tóm tắt nhanh về PS1,
Bản trình diễn VA OQ [sắp xếp],
thực hành. TBA
Thảo luận PS2 [thuật toán]
PS1. Python cơ bản
Quá hạn. Thứ tư, 08 Tháng ba 23, 07. 59 giờ sáng
[2. 5%]

ps2. vấn đề sắp xếp
Ngoài. Thứ tư, 08 Tháng ba 23, 08. 00 giờ sáng
09,
buổi 3
15+18 ngày 3 tháng 3. Liệt kê ADT. Array vs SLL, Stack và Queue ADT [Slide 1 đến 5-6]
Danh Sách Giới Thiệu ADT
[thực ra không phải là danh sách liên kết] cho Danh sách ADT
Giới thiệu [một số] nghiệp vụ SLL
Giới thiệu ngăn xếp ADT
SLLDemo. py [SLL tùy chỉnh và ngăn xếp]
danh sách Python như
Giới thiệu hàng đợi ADT
Danh sách Python dưới dạng [dequeue/pop[0] chậm]
SLLDemo. py đã xem lại [Hàng đợi tùy chỉnh, hàng đợi nhanh + hàng đợi]

3b. trì tụng. Danh sách
Phiên QnA bổ sung về bất kỳ điều gì về Danh sách, e. g. ,
một vài cách khác để triển khai Danh sách được liên kết,
nghệ thuật để thực sự tránh sử dụng Danh sách được liên kết, v.v.

3c. DLL và Deque ADT, Xếp hàng lại [Slide 6 đến hết]
Đường vòng đến Danh sách liên kết kép [DLL] và Deque ADT
Python cho hàng đợi ADT [nhanh]
Danh sách liên kết Trắc nghiệm trực tuyến [trung bình]
Các vấn đề của Kattis được thảo luận hôm nay
TBA
T03+L03. it5003lab3. pdf
Đánh giá SLL/Stack/Queue thông qua thử nghiệm nhỏ,
Hoạt động danh sách cổ điển bổ sung,
Các triển khai Python cho danh sách, ngăn xếp và hàng đợi [deque],
Bản tóm tắt nhanh về PS2,
VA OQ demo [danh sách],
thực hành. Thảo luận về TBA PS3 [thuật toán]
ps2
Quá hạn. Thứ tư, 15 Tháng ba 23, 07. 59 giờ sáng
[3%]

PS3. Liệt kê các vấn đề
Ngoài. Thứ tư, 15 Tháng ba 23, 08. 00 giờ sáng
10,
buổi 4
22+25 ngày 4 tháng 3. Hàng đợi ưu tiên [PQ] ADT. Đống nhị phân [Slide 1 đến 8-3]
Giới thiệu PQ ADT
Giới thiệu cấu trúc và hoạt động Binary Heap cơ bản
Heap nhị phânDemo. py
heapq Python
Xem priority_queue. py tại repo GitHub của trang web CPbook
O[N log N] Heapify/Tạo Heap trước
O[N log N] Sắp xếp đống trước

4b. trì tụng. Hàng đợi ưu tiên
Phiên QnA bổ sung về bất cứ điều gì về PQ, e. g. ,
Các phép toán PQ/Hồng nhị phân bổ sung
Mock VA OQ 1 [chỉ ở mức trung bình]
Các vấn đề của Kattis được thảo luận hôm nay
TBA

4c. Hàng đợi ưu tiên [PQ] [đến hết]
O[N] Heapify/Tạo Heap
Sắp xếp một phần O[N + K log N] so với các thuật toán sắp xếp khác
Các vấn đề của Kattis được thảo luận hôm nay
TBA

Bài kiểm tra trực tuyến VisuAlgo 1 [11%]
3 chủ đề đầu tiên của IT5003. sắp xếp, danh sách, đống [chỉ một chút],
với một số câu hỏi mới
9. 30-9. 45 giờ sáng, tại chỗ tại COM1-0206 [SR1]
Mang theo máy tính xách tay của riêng bạn
T04+L04. it5003lab4. pdf
PQ ADT/Đánh giá đống nhị phân,
Chuyển đổi PQ Max-Min [chỉ số],
Bản tóm tắt nhanh về PS3,
bản demo VA OQ [đống],
thực hành. TBA
Thảo luận về PS4 [thuật toán]
PS3
Quá hạn. Thứ tư, 22 Tháng ba 23, 07. 59 giờ sáng
[3%]

PS4. vấn đề PQ
Ngoài. Thứ tư, 22 Tháng ba 23, 08. 00 giờ sáng
11,
Buổi 5
29 Mar+01 T4 T05+L05. it5003lab5. pdf
Đánh giá bảng ADT,
Khái niệm băm cơ bản,
Các vấn đề về bảng băm,
Đánh giá nhanh BST,
Bản tóm tắt nhanh về PS4,
Bản demo VA OQ [bảng băm, bst],
thực hành. TBA
Thảo luận PS5 [thuật toán] PS4
Quá hạn. Thứ tư, 29 Tháng ba 23, 07. 59 giờ sáng
[3%]

PS5. [Băm] Các vấn đề về bảng
Ngoài. Thứ tư, 29 Tháng ba 23, 08. 00 giờ sáng
12,
buổi 6
05+08 T4 T06+L06. nó5003lab6. pdf
Đánh giá đồ thị DS,
Tạo DAG,
Bài tập chuyển đổi đồ thị DS,
Bài tập mô hình hóa đồ thị 1,
Đánh giá DFS/BFS 1,
Bản tóm tắt nhanh về PS5,
Bản trình diễn VA OQ [đồ thị, dfsbfs],
thực hành. TBA
Thảo luận PS6 [thuật toán] PS5
Quá hạn. Thứ tư, 05 Tháng tư 23, 07. 59 giờ sáng
[3%]

PS6. Đồ thị DS+Traversal Vấn đề
Ngoài. Thứ tư, 05 Tháng tư 23, 08. 00 giờ sáng
13,
buổi 7
12+15 ngày 7 tháng 4. Tiếp tục Duyệt đồ thị [Slide 7-2 đến 7-11]
Bài kiểm tra trực tuyến DFS/BFS [trung bình],
Các vấn đề của Kattis được thảo luận hôm nay
TBA

7b. trì tụng. [Cân bằng] BST + Biểu đồ 1
Đánh giá BST, cộng với BST cân bằng không thể kiểm tra
Phiên QnA bổ sung về bất kỳ điều gì về biểu đồ,
Xem lại Graph DS và Graph Traversal
i. e. , đồ thị ds [đồ thị ẩn],
duyệt đồ thị [đặc biệt là kiểm tra theo chu kỳ và toposort],
Các vấn đề của Kattis được thảo luận hôm nay
TBA

7b. Vấn đề đường dẫn ngắn nhất nguồn đơn [SSSP]
[Trượt 1 đến 2; sau đó là BFS. trượt 5 đến 6-3]
Giới thiệu bài toán SSSP
Đánh giá BFS cho các trường hợp không trọng số [bạn đã xem phần này trong Bài giảng 6b/7a]
Không có thuật toán Python tích hợp, xem bfs. py tại repo GitHub của trang web CPbook,
Bản xem trước của Dijkstra đã sửa đổi [sẽ được thảo luận chi tiết hơn vào Thứ Tư tới],
Các vấn đề của Kattis được thảo luận hôm nay
TBA
T07+L07. it5003lab7. pdf
Đánh giá DFS/BFS 2,
Đánh giá SSSP 1,
Bài tập Mô hình đồ thị 2,
Bản tóm tắt nhanh về PS6,
Bản trình diễn VA OQ [dfsbfs],
thực hành. TBA
Thảo luận PS7 [thuật toán] PS6
Quá hạn. Thứ tư, 12 Tháng tư 23, 07. 59 giờ sáng
[3%]

PS7. Các vấn đề về truyền tải đồ thị + SSSP
Ngoài. Thứ tư, 12 Tháng tư 23, 08. 00 giờ sáng
Đọc,
buổi 8
19+22 Tháng 4 [chỉ dành cho Thứ Hai, ngày 24 tháng 4 năm 2023]
T08+L08. it5003lab8. pdf
Đánh giá SSSP 2,
Bài tập Mô hình hóa đồ thị 3,
thực hành. Chỉ học PS8 trong lớp cho đến khi kết thúc
[có thể có tính năng bổ sung cho những người đã hoàn thành PS8]

Đã cho điểm tham gia phòng thí nghiệm [3%] PS7
Quá hạn. Thứ tư, 19 Tháng tư 23, 07. 59 giờ sáng
[3%]

PS8. Các vấn đề SSSP có trọng số
Ngoài. Thứ tư, 19 Tháng tư 23, 08. 00 giờ sáng
"Cửa sổ học tập", 26 tháng 4-03 tháng 5 năm 2023

Tư vấn đánh giá cuối cùng [theo yêu cầu]

Đánh giá cuối cùng Các bài báo trước đây
AY 2020/21. S1-chung kết. pdf, S2 [A/P Soo Yuen Jien, N/A],
AY 2021/22. S1-chung kết. pdf, S2-cuối cùng. pdf
AY 2022/23. S1-chung kết. pdf [bài viết gần đây nhất]; . pdf [rõ ràng là chưa có]
PS8
Quá hạn. Thứ tư, 26 Tháng tư 23, 07. 59 giờ sáng
[3%]
Đánh giá cuối cùng [50%]
Ngày giờ [TBC]. Thứ Năm, ngày 04 tháng 5 năm 2023, 5-7 giờ chiều [TBC, chúng tôi đang nhắm đến khoảng thời gian này]
Địa điểm. TBC [nhưng đây sẽ là đánh giá cuối cùng của F2F tại chỗ]
X% MCQ [khó];

Tôi có thể sử dụng Python cho Cấu trúc dữ liệu và thuật toán không?

Trong khóa học Chuyên sâu về cấu trúc dữ liệu và thuật toán thông qua Python này, Các chương trình Python được sử dụng để triển khai các khái niệm khác nhau, nhưng bạn có thể dễ dàng viết mã chúng bằng bất kỳ ngôn ngữ lập trình nào khác như C++, Java . .

Tôi có thể thực hành cấu trúc dữ liệu và thuật toán trong Python ở đâu?

6 Khóa học tốt nhất để học cấu trúc dữ liệu và thuật toán với Python năm 2022 .
Python cho cấu trúc dữ liệu, thuật toán và phỏng vấn. .
Thuật toán và cấu trúc dữ liệu trong Python [Khóa học tốt nhất của Udemy].
LeetCode trong Python. 50 câu hỏi phỏng vấn viết mã thuật toán. .
Cấu trúc dữ liệu cho các cuộc phỏng vấn viết mã trong Python [Giáo dục]

Cuốn sách tốt nhất để học cấu trúc dữ liệu và thuật toán Python là gì?

Thuật toán Grokking . Cuốn sách này bao gồm những điều cơ bản của các chủ đề như Thuật toán tham lam, Lập trình động, v.v.

Tôi có thể thực hành cấu trúc dữ liệu và giải thuật ở đâu?

Ngăn xếp và hàng đợi .
Tài nguyên. chuyên viên máy tính. org - Cấu trúc dữ liệu ngăn xếp. chuyên viên máy tính. org - Giới thiệu và triển khai mảng. hướng dẫn. com - Giải thuật cấu trúc dữ liệu. cs. cmu. edu - Ngăn xếp. .
vấn đề thực hành. spoj. com - JNEXT. spoj. com - STPAR. spoj. com - ONP. đầu bếp viết mã. com - MÁY TÍNH

Chủ Đề