1. Trang chủ
  2. » Giáo án - Bài giảng

Cấu trúc dữ liệu và giải thuật (Data Structure and Algorithms): Cài đặt môi trường trong cấu trúc dữ liệu

3 246 0

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 3
Dung lượng 154,91 KB

Nội dung

Chuyên đề tốt nghiệpMục lục TrangLời mở đầuMục lục 1Lời mở đầu 1Lời mở đầu 4Phần I 6Lý luận chung về hoạt động quản lý 6môi trờng hệ thống quản lý môi trờng 6I- Thực chất vai trò của hoạt động quản lý môi trờng 61. Khái niệm quản lý môi trờng .6 2. Tình hình phát triển của vấn đề quản lý môi trờng .63. Sự cần thiết phải quan tâm đến quản lý môi trờng 73. 1. Cơ sở phơng pháp luận .7Sơ đồ1: mối quan hệ giữa kinh tế môi trờng .83. 2. Cơ sở khoa học thực tiễn: .103. 3. Cơ sở pháp lý: .11II. Hệ thống quản lý môi trờng theo tiêu chuẩn ISO 14001 111. Vài nét về ISO 14000: .112. Các lợi ích khi áp dụng bộ tiêu chuẩn quốc tế ISO 14001: 142. 1. Tăng sức cạnh tranh của doanh nghiệp: .142.2. Tạo ra một số lợi thế trong kinh doanh .152.3. Quản lý môi trờng tốt hơn .16Hoàng Văn Hà - KTMT A- K411 Chuyên đề tốt nghiệp2.4. Làm thay đổi văn hoá trong doanh nghiệp .173. Các yêu cầu của hệ thống quản lý môi trờng theo tiêu chuẩn ISO 14001 .173.1. Chính sách môi trờng: .193.2. Lập kế hoạch: .203.3. Thực hiện điều hành hệ thống: 213.4. Kiểm tra các hoạt động khắc phục .233.5. Xem xét lại của lãnh đạo: 244. Những thuận lợi khó khăn khi áp dụng ISO 14001 ở các doanh nghiệp Việt Nam 254.1. Hiện trạng xây dựng áp dụng ISO 14001: 254.2. Những khó khăn thuận lợi 26Phần III 44Một số giải pháp để xây dựng hệ thống quản lý môi trờng ISO 14001 44I. Phơng hớng công tác quản lý chất lợng của Công ty trong thời gian tới .44II. Một số biện pháp để xây dựng hệ thống quản lý môi trờng ISO 14001 ở Công ty May Đức Giang. 451. Làm tốt hệ thống xử lý nớc thải ở khu vực sản xuất của Công ty .451.1. Cơ sở phơng pháp luận 451.2 Phơng án công nghệ lựa chọn. 461.3. Chi phí dự kiến 471.4. Hiệu quả về mặt kinh tế xã hội môi trờng của phơng án: .472. Cải tạo lại hệ thống xử lý khí Cài đặt môi trường Cấu trúc liệu Cài đặt IDE để biên dịch thực thi C Có số IDE có sẵn miễn phí để biên dịch thực thi chương trình C Bạn chọn Dev-C++, Code:: Blocks, Turbo C Tuy nhiên, lựa chọn phổ biến hay sử dụng Dev-C++ chương trình C loạt biên dịch thực thi Dev-C++ Sau cài đặt xong, để biên dịch thực thi chương trình C, bạn: (a) vào File -> New -> Project -> Console Application -> C project, sau nhập tên vào (b) File -> New -> Source File Cuối cùng, chép dán chương trình C vào file bạn vừa tạo Để biên dịch thực thi, chọn Execute -> Compile & Run Cài đặt để chạy Command Prompt Nếu bạn muốn cài đặt để biên dịch chạy Command Prompt, bạn nên đọc phần sau Nếu bạn muốn cài đặt chương trình C, bạn cần phải sử dụng phần mềm máy tính bạn: (a) Chương trình soạn văn - Text Editor (b) Bộ biên dịch C Text Editor Được sử dụng để soạn thảo chương trình Ví dụ vài trình editor Window Notepad, Notepad ++, vim hay vi… Tên phiên trình editor thay đổi theo hệ điều hành Ví dụ, Notepad sử dụng Windows, vim hay vi sử dụng Linux UNIX Các file bạn tạo trình editor gọi source file (file nguồn) chứa chương trình code Các file chương trình C thường đặt tên với phần mở rộng ".c" Trước bắt đầu chương trình bạn, chắn bạn có trình editor máy tính bạn có đủ kinh nghiệm để viết chương trình máy tính, lưu trữ file thực thi Bộ biên dịch C Mã nguồn viết file nguồn dạng đọc Nó biên dịch thành mã máy, CPU thực chương trình dựa lệnh viết Bộ biên dịch sử dụng để biên dịch mã nguồn (source code) bạn đến chương trình thực thi Tôi giả sử bạn có kiến thức biên dịch ngôn ngữ lập trình Bộ biên dịch thông dụng biên dịch GNU C/C++, mặt khác bạn có biên dịch khác HP Solaris với Hệ điều hành tương ứng Dưới phần hướng dẫn giúp bạn cách cài đặt biên dich GNU C/C++ hệ điều hành khác Tôi đề cập đến C/C++ biên dịch GNU gcc hoạt động cho ngôn ngữ C C++ Cài đặt môi trường UNIX/Linux Nếu bạn sử dụng Linux UNIX, bạn kiểm tra GCC cài đặt môi trường bạn chưa lệnh sau đây: $ gcc -v Nếu bạn có cài đặt GNU máy tính bạn, sau phản hồi thông báo sau: Using built-in specs Target: i386-redhat-linux Configured with: /configure prefix=/usr Thread model: posix gcc version 4.1.2 20080704 (Red Hat 4.1.2-46) Bài hướng dẫn viết dựa Linux tất ví dụ dược biên dịch Cent OS hệ thống Linux Cài đặt môi trường Mac OS Nếu bạn sử dụng hệ điều hành Mac OS X, cách đơn giản để có GCC download môi trường phát triển Xcode, bạn sử dụng biên dịch GNU cho C/C++ Cài đặt Windows Để cài đặt GCC Windows bạn cần phải cài đặt MinGW Để cài đặt MinGW, bạn truy cập vào www.mingw.org, theo hướng dẫn trang download Download phiên cho chương trình MinGW, tên MinGW.exe Khi cài đặt MinWG, bạn phải cài đặt gcc-core, gcc-g++, binutils MinGW runtime, bạn cài đặt nhiều Thêm thư mục bin nơi cài đặt MinGW vào biến môi trường PATH bạn, bạn sử dụng trực tiếp công cụ dạng command line dễ dàng Khi trình cài đặt hoàn tất, bạn chạy gcc, g++, ar, ranlib, dlltool công cụ GNU khác Windows command line BỘ GIÁO DỤC ĐÀO TẠO TRƯỜNG ĐẠI HỌC VINH NGHIÊN CỨU THỬ NGHIỆM MÔ HÌNH NUÔI GHÉP TÔM SÚ VỚI TU HÀI RONG CÂU NHẰM CẢI THIỆN MÔI TRƯỜNG TRONG AO ĐẤT TẠI SÔNG CẦU – PHÚ YÊN KHÓA LUẬN TỐT NGHIỆP KỸ SƯ NUÔI TRỒNG THỦY SẢN Người thực hiện: Nguyễn Quốc Hùng Người hướng dẫn: Th.s. Nguyễn Thị Thanh Vinh - 1/2009 1 LỜI CẢM ƠN Đề tài này được thực hiện nhờ sự hỗ trợ của đề tài cấp Bộ: “Xây dựng giải pháp kỹ thuật nuôi kết hợp tôm sú, ốc hương với Tu hài, Rong biển trong các ao nuôi tôm Sú theo hướng bền vững tại huyện Sông Cầu, Phú Yên.”- Chủ nhiệm đề tài Th.s Thái Ngọc Chiến, Viện Nghiên Cứu NTTS III, Nha Trang. Để hoàn thành khóa luận tốt nghiệp này tôi xin chân thành bày tỏ lòng biết ơn đến phòng đào tạo trường Đại Học Vinh,ban chủ nhiệm khoa Nông Lâm Ngư, tổ bộ môn Nuôi Trồng Thủy Sản cũng như các thầy cô giáo đã tận tình dạy dỗ tôi trong suốt khóa học. Tôi xin chân thành cảm ơn sâu sắc đến giáo viên,Th.s Nguyễn Thị Thanh,Th.s Thaí Ngọc Chiến đã tận tình hướng dẫn cho tôi trong quá trình thực hiện hoàn thiện đề tài này. Tôi xin chân thành cảm ơn các cán bộ kỹ thuật, nguời nuôi tôm vùng Sông Cầu, Phú Yên đã giúp tôi rất nhiều trong việc triển khai đề tài. Xin ghi nhận sự giúp đỡ của các bạn cùng khóa học trong việc góp ý kiến bổ sung, sửa đổi để luận văn hoàn chỉnh hơn. Cuối cùng tôi xin cảm ơn gia đình, anh chị em đã giúp đỡ động viên tôi trong quá trình thực hiện. Một lần nữa xin chân thành cảm ơn! TP Vinh, tháng 11/2008 Sinh viên Nguyễn Quốc Hùng 2 MỞ ĐẦU . 1 Chương 1. TỔNG QUAN TÀI LIỆU 4 1.1. Một số đặc điểm của tôm Sú: Penaeus monodon (Fabricius, 1798) . 4 1.1.1. Hệ thống phân loại . 4 1.1.2. Đặc điểm hình thái 4 1.1.3. Phân bố CẤU TRÚC DỮ LIỆU VÀ GIẢI THUẬT DATA STRUCTURE AND ALGORITHMS GV: Phạm Tuấn Hiệp Email: hiep0109@yahoo.com Ôn tập tốt nghiệp Nội dung ôn tập  Chương 1: Ôn tập Kỹ thuật lập trình  Chương 2: Tìm kiếm, Sắp xếp  Chương 3: Danh sách liên kết  Chương 4: Cây 2 Ôn tập tốt nghiệp Tài liệu học tập  Giáo trình:  C & Data Structures, P. S. Deshpande, O. G. Kakde - CHARLES RIVER MEDIA, INC. Hingham, Massachusetts.  Tham khảo:  Giáo trình Cấu trúc dữ liệu 1, Trần Hạnh Nhi – Dương Anh Đức, Trường ĐHKHTN – ĐHQG TP.HCM.  Phần mềm lập trình:  C-Free 4.0  Borland C++  … 3 Chương 1: Ôn tập Kỹ thuật lập trình 4 Ôn tập tốt nghiệp Nội dung  Con trỏ  Mảng 1 chiều  Đệ quy 5    Ôn tập tốt nghiệp Con trỏ  Cách khai báo con trỏ  Các phép toán trên con trỏ 6 void main(){ int x=10, y=20; int *p, *q; p=&x; q=&y; cout<<x<<" "<<y<<endl; cout<<*p<<" "<<*q<<end; } Cho biết kết quả in ra màn hình? x = 10 y = 10 p = 10 q = 10 Ôn tập tốt nghiệp Con trỏ void main(){ int x=10, y=20; int *p, *q; p=&x; q=&y; *p=50; *q=90; cout<<x<<" "<<y<<endl; cout<<*p<<" "<<*q<<end; } Cho biết kết quả in ra màn hình? 7 x = 50 y = 90 p = 50 q = 90 Ôn tập tốt nghiệp Con trỏ void main(){ int x=10, y=20; int *p, *q; p=&x; q=&y; *p=50; *q=90; p=q; cout<<x<<" "<<y<<endl; cout<<*p<<" "<<*q<<end; } Cho biết kết quả in ra màn hình? 8 x = 50 y = 90 p = 90 q = 90 Ôn tập tốt nghiệp Con trỏ Cho biết kết quả của chương trình sau: int Test(int &a, int b, int &c) { a ; a+=b; ++c=a+b; return a+b+c; } int x=5, y=2, z=2011; void main(){ cout<<Test(x,y,z)<<" "<<x<<" "<<y<<" "<<z<<endl; } 9 A. 16 6 2 2011 B. 16 5 2 8 C. 16 5 2 2011 D. 16 6 2 8 Ôn tập tốt nghiệp Nội dung  Con trỏ  Mảng 1 chiều  Đệ quy 10    Ôn tập tốt nghiệp Mảng 1 chiều  Khai báo mảng  Các phép toán trên mảng 11 void function(char *s1, char *s2){ while (*(s1++)=*(s2++)); } void main(){ char s2[100]; char s1[]="Giao Trinh Ngon Ngu C++"; function(s2,s1); cout<<s2; } Cho biết kết quả in ra màn hình? Giao Trinh Ngon Ngu C++ Ôn tập tốt nghiệp Mảng 1 chiều void main(){ float a[5]={5, 4, 3, 2, 1}; float x; int i; for(i=0; i<5; i++) a[i] += a[0]; x=a[1]+a[4]; cout<<x; } Cho biết kết quả in ra màn hình? 12 A. 125 B. 5 C. 100 D. 25 Ôn tập tốt nghiệp Mảng 1 chiều Cho biết kết quả của chương trình sau: void main(){ int a[]={5,1,12,11,8,20,14,12,7}; for(int i=4;i<=7;i++) for(int j=i+1;j<=8;j++) if(a[i]>a[j]){ int t=a[i]; a[i]=a[j]; a[j]=t; } cout<<a[6]; } 13 A. 7 B. 12 C. 8 D. 20 Ôn tập tốt nghiệp Nội dung  Con trỏ  Mảng 1 chiều  Đệ quy 14    Ôn tập tốt nghiệp Đệ quy  Đệ quy là sự gọi lại chính nó khi thực hiện  Thường được dùng cho các bài toán truy hồi 15 Cho hàm đệ quy sau: int Func(int n){ if(n == 5) return 5; else return 2 * Func(n+1); } Giá trị của Func(2) là? A. 50 B. 2 C. 5 D. 40 Ôn tập tốt nghiệp Đệ quy void Foo(int x){ if(x>0) Foo(x-3); cout<<x<<" "; } Cho biết kết quả in ra màn hình khi goi hàm Foo(6)? 16 A. 6 3 B. 0 3 6 C. 0 3 D. 6 3 0 Chương 2: Tìm kiếm, Sắp xếp 17 Ôn tập tốt nghiệp Nội dung  Tìm kiếm tuyến tính, nhị phân  Các thuật toán sắp xếp  Đổi chỗ trực tiếp (Interchange sort)  Nổi bọt (Bubble sort)  Chèn trực tiếp (Insertion sort)  Chọn trực tiếp (Selection sort)  Dựa trên phân hoạch (Quick sort) 18    Ôn tập tốt nghiệp Tìm kiếm CấU TRÚC Dữ LIệU GIảI THUẬT DATA STRUCTURE AND ALGORITHMS 1 Chương 1: Ôn tập C/C++ Chương 1: Ôn tập C/C++ Nội dung môn học  Chương 0: Giới thiệu chung về CTDL GT  Chương 1: Ôn tập C/C++  Chương 2: Đệ quy (Recursion)  Chương 3: Tìm kiếm (Searching)  Chương 4: Sắp xếp (Sorting)  Chương 5: Ngăn xếp - Hàng đợi (Stacks - Queues)  Chương 6: Danh sách liên kết (Linked List)  Chương 7: Cây (Tree) 2 Chương 1: Ôn tập C/C++ Chương 1: Ôn tập C/C++ Đánh giá kết quả 1. Kiểm tra giữa kỳ: thực hành  Điểm Kiểm tra giữa kỳ < 4  không được thi kết thúc môn  học lại 2. Kiểm tra cuối kỳ: thực hành  Điểm Kiểm tra cuối kỳ < 5  không được thi kết thúc môn  học lại 3. Bài tập lớn: làm các bài tập trong module  Điểm Đề tài < 5  không được thi kết thúc môn  học lại 4. Thi kết thúc môn: trắc nghiệm 5. Kiểm tra thường kỳ 3 Chương 1: Ôn tập C/C++ Chương 1: Ôn tập C/C++ Tài liệu học tập  Giáo trình:  C & Data Structures, P. S. Deshpande, O. G. Kakde - CHARLES RIVER MEDIA, INC. Hingham, Massachusetts.  Tham khảo:  Giáo trình Cấu trúc dữ liệu 1, Trần Hạnh Nhi – Dương Anh Đức, Trường ĐHKHTN – ĐHQG TP.HCM.  Phần mềm lập trình:  C-Free  Borland C++  … 4 Chương 1: Ôn tập C/C++ Chương 1: Ôn tập C/C++ Nhắc nhở một số quy định  Đi học đúng giờ  Đeo thẻ SV  Không để chuông điện thoại reo trong giờ học  Không nghe điện thoại, nhắn tin trong giờ học  Không nói chuyện riêng, làm ồn khi nghe giảng  Mang đầy đủ tài liệu học tập của môn học (khi học LT TH): giáo trình, bài tập, tập chép bài (hoặc slide bài giảng), usb để lưu bài tập  Phải làm bài tập ở nhà  Nếu vi phạm: Nhắc nhở chung  Bị mời ra khỏi lớp  Xóa tên khỏi môn học 5 Chương 0: Giới thiệu chung 6 Chương 1: Ôn tập C/C++ Chương 1: Ôn tập C/C++ Nội dung  Cấu trúc dữ liệuThuật toán  Độ phức tạp của thuật toán 7  Chương 1: Ôn tập C/C++ Chương 1: Ôn tập C/C++ Cấu trúc dữ liệu  (1) Sự tổ chức hợp lý của các thành phần dữ liệu,  (2) Tập các thao tác để truy cập các thành phần dữ liệu.  Ví dụ:  Mảng (Array)  Danh sách liên kết (Linked List)  Ngăn xếp (Stack)  Hàng đợi (Queue)  Cây (Tree)  …  (1) the logical arrangement of data elements, combined with  (2) the set of operations we need to access the elements. 8 Chương 1: Ôn tập C/C++ Chương 1: Ôn tập C/C++ Nội dung  Cấu trúc dữ liệuThuật toán  Độ phức tạp của thuật toán 9  Chương 1: Ôn tập C/C++ Chương 1: Ôn tập C/C++ Thuật toán  Tập các bước có thể tính toán được để đạt được kết quả mong muốn (A computable set of steps to achieve a desired result)  Ví dụ: Tính tổng các số nguyên lẻ từ 1  n  B1: S=0  B2: i=1  B3: Nếu i>n thì sang B7, ngược lại sang B4  B4: S=S+i  B5: i=i+2  B6: Quay lại B3  B7: Tổng cần tìm là S 10 [...]... của CTDL thuật toán 11 CTDL + Thuật toán = Chương trình Chương 1: Ôn tập Nội dung 12  Cấu trúc dữ liệuThuật toán  Độ phức tạp của thuật toán (algorithm  complexity) Chương 1: Ôn tập Thời gian thực Cấu trúc liệu giải thuật (Data Structure and Algorithms): Cấu trúc liệu mảng Cấu trúc liệu mảng Cấu trúc liệu mảng gì? Mảng (Array) cấu trúc liệu cũ quan trọng Mảng lưu giữ số phần tử cố định phần tử có kiểu Hầu hết cấu trúc liệu sử dụng mảng để triển khai giải thuật Dưới khái niệm quan trọng liên quan tới Mảng • Phần tử: Mỗi mục lưu giữ mảng gọi phần tử • Chỉ mục (Index): Mỗi vị trí phần tử mảng có mục số sử dụng để nhận diện phần tử Mảng gồm ghi có kiểu giống nhau, có kích thước cố định, phần tử xác định số Mảng cấu trúc liệu cấp phát lien tục Ưu điểm mảng: • Truy câp phần tử với thời gian số O(1) • Sử dụng nhớ hiệu • Tính cục nhớ Nhược điểm • Không thể thay đổi kích thước mảng chương trình dang thực Mảng động Mảng động (dynamic aray): cấp phát nhớ cho mảng cách động trình chạy chương trình C malloc calloc, C++ new Sử dụng mảng động ta bắt đầu với mảng có phàn tử, số lượng phàn tử vượt qua khả ảng ta gấp đôi kích thước mảng cuc copy phàn tử mảng cũ vào nửa đầu mảng Ưu điểm: tránh lãng phí nhớ phải khai báo mảng có kích thước lớn từ đầu Nhược điểm: + phải thực them thao tác copy phần tử thay đổi kích thước + số thời gian thực thao tác không số Biểu diễn Cấu trúc liệu mảng Mảng khai báo theo nhiều cách đa dạng ngôn ngữ lập trình Để minh họa, sử dụng phép khai báo mảng ngôn ngữ C: Hình minh họa phần tử mục: Dưới số điểm cần ghi nhớ cấu trúc liệu mảng: • Chỉ mục bắt đầu với • Độ dài mảng 10, nghĩa mảng lưu giữ 10 phần tử • Mỗi phần tử truy cập thông qua mục phần tử Ví dụ, lấy giá trị phần tử mục 27 Phép toán hỗ trợ mảng Dưới hoạt động hỗ trợ mảng: • Duyệt: In tất phần tử mảng theo cách in phần tử • Chèn: Thêm phần tử vào mảng mục cho • Xóa: Xóa phần tử từ mảng mục cho • Tìm kiếm: Tìm kiếm phần tử sử dụng mục hay giá trị • Cập nhật: Cập nhật giá trị phần tử mục Trong ngôn ngữ C, mảng khởi tạo với kích cỡ ban đầu, gán giá trị mặc định cho phần tử mảng theo thứ tự sau: Kiểu liệu Giá trị mặc định bool false char int float 0.0 double 0.0f void wchar_t Hoạt động chèn phần tử vào mảng Hoạt động chèn để chèn nhiều phần tử liệu vào mảng Tùy theo yêu cầu, phần tử chèn vào vị trí đầu, vị trí cuối vị trí mục cho mảng Phần triển khai hoạt động chèn ví dụ thực Trongdụ này, chèn liệu vào cuối mảng Ví dụ Giả sử LA mảng tuyến tính thứ tự có N phần tử K số nguyên dương thỏa mãn K = K Gán LA[J+1] = LA[J] Gán J = J-1 Gán LA[K] = ITEM Kết thúc Sau code đầy đủ giải thuật ngôn ngữ C: #include main() { int LA[] = {1,3,5,7,8}; int item = 10, k = 3, n = 5; int i = 0, j = n; printf("Danh sach phan tu mang ban dau:\n"); for(i = 0; i= k){ LA[j+1] = LA[j]; j = j - 1; } LA[k] = item; printf("Danh sach phan tu cua mang sau hoat dong chen:\n"); for(i = 0; i ... Linux Cài đặt môi trường Mac OS Nếu bạn sử dụng hệ điều hành Mac OS X, cách đơn giản để có GCC download môi trường phát triển Xcode, bạn sử dụng biên dịch GNU cho C/C++ Cài đặt Windows Để cài đặt. .. binutils MinGW runtime, bạn cài đặt nhiều Thêm thư mục bin nơi cài đặt MinGW vào biến môi trường PATH bạn, bạn sử dụng trực tiếp công cụ dạng command line dễ dàng Khi trình cài đặt hoàn tất, bạn chạy... phải cài đặt MinGW Để cài đặt MinGW, bạn truy cập vào www.mingw.org, theo hướng dẫn trang download Download phiên cho chương trình MinGW, tên MinGW.exe Khi cài đặt MinWG, bạn phải cài đặt

Ngày đăng: 08/09/2017, 03:31

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN