bài giảng cấu trúc dữ liệu và thuật toán chương 5 ngăn xếp – hàng đợi

88 935 0
bài giảng cấu trúc dữ liệu và thuật toán chương 5 ngăn xếp – hàng đợi

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Chương 5: NGĂN XẾP – HÀNG ĐỢI (Stack - Queue) 1 Chương 5: Ngăn xếp – Hàng đợi Nội dung  Ngăn xếp  Hàng đợi 2  Ngăn xếp (Stack)  Khái niệm Stack  Các thao tác trên Stack  Hiện thực Stack  Ứng dụng của Stack  Hàng đợi Chương 5: Ngăn xếp – Hàng đợi Stack - Khái niệm  Stack là một danh sách mà các đối tượng được thêm vào và lấy ra chỉ ở một đầu của danh sách (A stack is simply a list of elements with insertions and deletions permitted at one end)  Vì thế, việc thêm một đối tượng vào Stack hoặc lấy một đối tượng ra khỏi Stack được thực hiện theo cơ chế LIFO (Last In First Out - Vào sau ra trước)  Các đối tượng có thể được thêm vào Stack bất kỳ lúc nào nhưng chỉ có đối tượng thêm vào sau cùng mới được phép lấy ra khỏi Stack 3 Chương 5: Ngăn xếp – Hàng đợi Stack – Các thao tác  Stack hỗ trợ 2 thao tác chính:  “Push”: Thao tác thêm 1 đối tượng vào Stack  “Pop”: Thao tác lấy 1 đối tượng ra khỏi Stack  Ví dụ: 5 3 2 - - 4 4 Chương 5: Ngăn xếp – Hàng đợi Stack – Các thao tác 5  Stack cũng hỗ trợ một số thao tác khác:  isEmpty(): Kiểm tra xem Stack có rỗng không  Top(): Trả về giá trị của phần tử nằm ở đầu Stack mà không hủy nó khỏi Stack. Nếu Stack rỗng thì lỗi sẽ xảy ra Chương 5: Ngăn xếp – Hàng đợi Stack – Hiện thực Stack (Implementation of a Stack) 6 Mảng 1 chiều Danh sách LK Kích thước stack khi quá thiếu, lúc quá thừa Cấp phát động! Push / Pop hơi phức tạp Push/Pop khá dễ dàng Chương 5: Ngăn xếp – Hàng đợi Hiện thực Stack dùng mảng (Implementation of a Stack using Array)  Có thể tạo một Stack bằng cách khai báo một mảng 1 chiều với kích thước tối đa là N (ví dụ: N =1000)  Stack có thể chứa tối đa N phần tử đánh số từ 0 đến N-1  Phần tử nằm ở đỉnh Stack sẽ có chỉ số là top (lúc đó trong Stack đang chứa top+1 phần tử)  Như vậy, để khai báo một Stack, ta cần một mảng 1 chiều list, và 1 biến số nguyên top cho biết chỉ số của đỉnh Stack: struct Stack { DataType list[N]; int top; }; 7 Chương 5: Ngăn xếp – Hàng đợi Hiện thực Stack dùng mảng (Implementation of a Stack using Array)  Lệnh top = 0 sẽ tạo ra một Stack S rỗng  Giá trị của top sẽ cho biết số phần tử hiện hành có trong Stack  Khi cài đặt bằng mảng 1 chiều, Stack bị giới hạn kích thước nên cần xây dựng thêm một thao tác phụ cho Stack:  isFull(): Kiểm tra xem Stack có đầy chưa, vì khi Stack đầy, việc gọi đến hàm Push() sẽ phát sinh ra lỗi 8 Chương 5: Ngăn xếp – Hàng đợi Hiện thực Stack dùng mảng (Implementation of a Stack using Array) 9  Khởi tạo Stack: void Init (Stack &s) { s.top = 0; } Chương 5: Ngăn xếp – Hàng đợi Hiện thực Stack dùng mảng (Implementation of a Stack using Array)  Kiểm tra Stack rỗng hay không: 10 int isEmpty(Stack s) { if (s.top==0) return 1; // stack rỗng else return 0; } [...]... trị giới hạn Loại A Loại B 40 40 6-9 5- 9 20 50 50 100 50 100 1.000 3.000 50 100 20 50 250 1.000 200 1.000 0,1 2 50 0,001 1 1 2 5. 000 10.000 CHƯƠNG 3 CHỌN VÀ THUYẾT MINH CÔNG NGHỆ XỬ LÍ 3.1.Chọn quy trình công nghệ: [1] Thiết kế hệ thống xử lý nước thải đô thị SVTH: Nguyễn Đình Thiên Ân Đồ án tốt nghiệp Nước thải Trang 17 GVHD:Th.S Trần Thế Truyền Ngăn tiếp nhận và trạm bơm nước thải Song chắn rác... Lcn * Qcn 212,12 * 54 450 + 341,18 * 21000 = = 248,04 mg/l Qsh + Qcn 54 450 + 21000 Trong đó: Ltc=Hàm lượng NOS20 trong nước thải hỗn hợp, mg/l Lcn= Hàm lượng NOS20 của nước thải công nghiệp: Lcn(NOS20)= NOS5: 0, 85= 290: 0, 85= 341,18 mg/l 4.1 .5. Dân số tính toán: Dân số tương đương theo chất lơ lửng Nlltd= [3, trang 104] Qcn * C cn 21000 * 320 = = 122181,82 người nll 55 Dân số tính toán theo chất lơ lửng:... hoạt và nước thải công nghiệp: Lưu lượng nước thải tổng cộng Qtc: Qtc= 54 450 + 21000 = 754 50 m3/ngd Lưu lượng trung bình giờ: Qtctb h= Q tc ngd tb 24 = [3, trang 101] 754 50 = 3143, 75 m3/h 24 Lưu lượng trung bình giây: Qtctb s= [3, trang 101] Q tc h 3143, 75 tb = 873,26 l/s = 3,6 3,6 Lưu lượng nước thải tổng cộng lớn nhất ngày đêm: [ 3, trang 101] Qtcmax ngd= Qshmax ngd + Qcnngd = 67 650 + 21000 = 88 650 ... hóa BOD5 (Ltc ) 4.2.3.3.Tính toán sân phơi cát: m m mg/l mg/l 1,6 0,11 300,62 226,21 Kích thước bể: Diện tích hữu ích của sân phơi cát: FSC= [3, trang 127] N ll * P * 3 65 452 182 * 0,02 * 3 65 = = 660,19 m2 1000 * 5 1000 * h Trong đó: h = Chiều cao lớp bùn cát trong năm, h = 4 -5 m/năm Chọn sân phơi cát gồm 4 ô, diện tích mỗi ô bằng: 660,19:4= 1 65, 05 m2 ≈ 166 m2 Kích thước mỗi ô: LSCxBSC = 22 x 7 ,55 m 4.2.4.Tính... 4.2.1.Tính toán ngăn tiếp nhận nước thải: [3, trang 110-111] Ngăn tiếp nhận nước thải được đặt ở vị trí cao để nước thải từ đó có thể tự chảy qua từng công trình đơn vị của trạm xử lí Dựa vào kinh nghiệm, có thể lựa chọn kích thước ngăn tiếp nhận phụ thuộc vào lưu lượng tính toán Q của trạm xử lí Với Qtcmax h = 7131,4 m3/h và các số liệu lưu lượng nước thải, chọn 2 ngăn tiếp nhận với các thông số mỗi ngăn như... GVHD:Th.S Trần Thế Truyền 5 4 Chú thích: 1- Ống đẫn nước thải vào trạm xử lý 1 2- Lưới chắn rác thô 2 3 3- Bơm nhúng chìm 5 1 4 - Ống dẫn nước thải đến công trình xử lý tiếp theo 5 - Cầu thang Hình 4.1 Ngăn tiếp nhận và bơm nước thải 4.2.2.Song chắn rác: Song chắn rác giữ các tạp chất có kích thước lớn Nội dung tính toán gồm: a)Tính toán mương dẫn: Mương dẫn nước thải từ ngăn tiếp nhận đến song chắn... phải xử lý hiếu khí + Các điều kiện ảnh hưởng đến quá trình phân huỷ kị khí: • Nhiệt độ: t0opt = 35 ÷ 55 0C • Nguyên liệu: là các loại nước thải có độ ô nhiễm cao (BOD từ 4000 ÷ 50 00 mg/l), các loại cặn phân rác thải • pH môi trường: pHopt = 6,4 ÷ 7 ,5 Thực tế có những biện pháp kỹ thuật cho lên men ở độ pH = 7 ,5 ÷ 7,8 vẫn hiệu quả • Các ion kim loại có ảnh hưởng rất lớn đến hệ vi sinh vật sinh mêtan + Các... 9,91* 750 = 7342,5kg/ngđ = 7,34 25 T/ngđ Trong đó: G = Khối lượng riêng của rác, G = 750 kg/m3 Trọng lượng rác trong từng giờ trong ngày đêm: Ph= [3, trang 117] P 7,34 25 * Kh = * 2 = 0,612 T/h 24 24 Trong đó: Kh = Hệ số không điều hòa giờ của rác, Kh = 2 Rác đươc nghiền nhỏ trong máy nghiền rác (gồm 2 máy, trong đó 1 công tác và 1 dự phòng) và sau đó dẫn đến bể mêtan để xử lí cùng với bùn tươi và bùn... tính toán với điều kiện vmin>= 0,15m/s vmin= Qmin 50 7,94 = = 0,24 m/s > 0, 15 m/s 2 * bC * H min 2 * 2,31 * 0, 45 * 1000 Trong đó: Hmin = Độ sâu lớp nước ứng với Qmin, lấy bằng độ đầy h ứng với Qmin Cát ở bể lắng cát được gom về hố tập trung ở đầu bể, sau đó hỗn hợp cátnước sẽ được đưa đến sân phơi cát Hàm lượng chất lơ lửng (C tc’’) và NOS20(Ltc’’) của nước thải sau khi qua bể lắng cát giảm 5% và còn... tính cho 1 người trong ngày đêm, nll = 55 g/ng.ngd Thiết kế hệ thống xử lý nước thải đô thị SVTH: Nguyễn Đình Thiên Ân Đồ án tốt nghiệp Trang 25 GVHD:Th.S Trần Thế Truyền qtb = Tiêu chuẩn thoát nước trung bình, qtb= 1 65 l/ng.ngd Hàm lượng chất lơ lửng trong hỗn hợp nước thải: Ctc= C sh * Qsh + C cn * Qcn 333,33 * 54 450 + 320 * 21000 = = 329,62 mg/l Qsh + Qcn 54 450 + 21000 Trong đó Csh, Ccn = Hàm lượng . Chương 5: NGĂN XẾP – HÀNG ĐỢI (Stack - Queue) 1 Chương 5: Ngăn xếp – Hàng đợi Nội dung  Ngăn xếp  Hàng đợi 2  Ngăn xếp (Stack)  Khái niệm Stack  Các thao. lỗi 8 Chương 5: Ngăn xếp – Hàng đợi Hiện thực Stack dùng mảng (Implementation of a Stack using Array) 9  Khởi tạo Stack: void Init (Stack &s) { s.top = 0; } Chương 5: Ngăn xếp – Hàng đợi Hiện. Hiện thực Stack  Ứng dụng của Stack  Hàng đợi Chương 5: Ngăn xếp – Hàng đợi Stack - Khái niệm  Stack là một danh sách mà các đối tượng được thêm vào và lấy ra chỉ ở một đầu của danh sách

Ngày đăng: 19/10/2014, 12:10

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan