Project 2 Quarter 4 Quick Search

14 397 2
Project 2 Quarter 4 Quick Search

Đ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

PROJECT REPORT Project 2: Quick Search Group Members: 1. Huỳnh Thuỷ Ngân (S103006100002) 2. Nguyễn Chí Nhân (S093006100153) Batch Code: B110002 Centre: NIIT Quick Search NIIT Cần Thơ Project title Batch Code : B110002 Start Date : 2/3/2011 End Date: 15/02/2011 Name of the Coordinator : Mr. Phạm Tiến Phúc Names of Developers : Group 1 – B110002 Date of Submission: 16/02/2011 Page 2 of 14 Quick Search NIIT Cần Thơ Page 3 of 14 Quick Search NIIT Cần Thơ CERTIFICATE Đây là tài liệu về báo cáo mang tên Quick Search được hoàn thành bởi nhóm 1 tại trung tâm NIIT Cần Thơ. Ng ười hướng dẫn : Mr. Phạm Tiến Phúc Page 4 of 14 Quick Search NIIT Cần Thơ ACKNOWLEDGEMENT Chúng tôi nhận được sự hỗ trợ và góp ý từ thầy Phạm Tiến Phúc và những giảng viên khác trong trung tâm NIIT, xin chân thành cảm ơn mọi người đã giúp đỡ chúng tôi hoàn thành bài báo cáo này. Page 5 of 14 Quick Search NIIT Cần Thơ REQUIREMENTS ANALYSIS RedSky Inc là một tổ chức sản xuất và cung cấp sản phẩm cho một số thành phố trên thế giới. RedSky sản xuất tổng cộng năm sản phẩm, đều có một mã số sản phẩm khác nhau. Các bộ phận bán hàng của RedSky te duy trì dữ liệu bán hàng cho sản phẩm ách vào một tập tin văn bản riêng biệt. mỗi bản ghi trong mỗi tập tin chứa hai lĩnh vực, thành phố và con số bán hàng. Các bản ghi trong các tập tin văn bản chưa sắp xếp theo thứ tự cụ thể. Để tìm kiếm một hồ sơ trong các tập tin, các tập tin cần phải được đọc liên tục.Số lượng các bản ghi trong mỗi tập tin là rất cao. Kết quả là, các nhân viên phòng kinh doanh lãng phí rất nhiều thời gian trong tìm kiếm cho doanh số thông tin bán hàng. Để giải quyết vấn đề, chúng tôi đã phát triển một tiện ích gọi là QuickSearch. Page 6 of 14 Quick Search NIIT Cần Thơ PHÂN TÍCH HỆ THỐNG Hệ thống được xây dựng dựa trên các nguyên tắc của cây tìm kiếm nhị phân. Mỗi một đối tượng gồm có 2 dữ liệu là ID của thành phố và doanh số. Nhưng theo yêu cầu của hệ thống ta sẽ cho thêm một dữ liệu nữa là index của nó. Từ đây có thể thấy mỗi node gồm có 5 dữ liệu: ID của thành phố, doanh số, index, con trái nhất, con phải nhất. Ta có các chức năng được sử dụng trên cây như: Tìm kiếm (Searching) Việc tìm một khóa trên BST được thực hiện nhờ đệ quy. Chúng ta bắt đầu từ gốc. Nếu khóa cần tìm bằng khóa của gốc thì khóa đó trên cây, nếu khóa cần tìm nhỏ hơn khoa ở gốc, ta phải tìm nó trên cây con trái, nếu khóa cần tìm lớn hơn khóa ở gốc, ta phải tìm nó trên cây con phải. Nếu cây con (trái hoặc phải) là rỗng thì khóa cần tìm không có trên cây. public void find(int ele, ref Node parent, ref Node currentNode) { currentNode = root; parent = null; while ((currentNode != null) && (currentNode.citY_id != ele)) { parent = currentNode; if (ele < currentNode.citY_id) { currentNode = currentNode.lchild; } else currentNode = currentNode.rchild; } } Chèn (Insertion) Phép chèn bắt đầu giống như phép tìm kiếm; Nếu khóa của gốc khác khóa cần chèn ta tìm nó trong cây con trái hoặc phải. Nếu cây con trái hoặc phải tương ứng là rỗng (không tìm thấy) thì thêm một nút và gán cho nút ấy khóa cần chèn. Page 7 of 14 Quick Search NIIT Cần Thơ public void insert(int c, int s, int i) { Node temp, parent = null, currentNode = null; find(c, ref parent, ref currentNode); if (currentNode != null) { Console.WriteLine("Duplicate"); return; } else { temp = new Node(c, s, i, null, null); if (parent == null) root = temp; else { if (c < parent.citY_id) parent.lchild = temp; else parent.rchild = temp; } } } SỐ CHỨC NĂNG Page 8 of 14 Quick Search NIIT Cần Thơ Số chức năng: 3 Tên chức năng: 1. Create Index 2. Insert Record 3. Load file to search Page 9 of 14 Quick Search NIIT Cần Thơ Create Index Khi chọn chức năng Create Index, cửa sổ tạo chỉ mục sẽ hiện ra: Chọn trong những item trong list rồi bấm Create, hệ thống sẽ tạo index cho sản phẩm đó. File lưu ID cửa hàng và doanh số bán được mở ra đọc. Mỗi cửa hàng sẽ được xem như là một node trong cây nhị phân. private void bttCreateIndex_Click(object sender, EventArgs e) { BSTree br = new BSTree(); string str; int pos; int count = 0; FileStream fs = new FileStream(lstTypeProduce.SelectedItem.ToString()+".txt", FileMode.Open, FileAccess.Read); StreamReader sr = new StreamReader(fs); FileStream fsi = new FileStream(lstTypeProduce.SelectedItem.ToString() + "_index.txt", FileMode.Create, FileAccess.Write); StreamWriter sw = new StreamWriter(fsi); while ((str = sr.ReadLine()) != null) { count++; pos = str.IndexOf(","); int city_id = Convert.ToInt32(str.Substring(0, pos)); br.insert(city_id, 0, count); } br.inorder(br.root, sw); } Page 10 of 14 [...]... 14 Quick Search NIIT Cần Thơ CONFIGURATION Hardware : P IV – 3.0 GHz 865/915 Chipset 800 MHz FSB 5 12 MB RAM (2* 25 6MB) 80 GB 720 0 PRM Hard Drive CD ROM Drive 10/100 NIC Optical Wheel Mouse Keyboard 17” Color Monitor Operating system : Windows XP with SP 2 Software : Net Framework 2. 0 Page 13 of 14 Quick Search NIIT Cần Thơ NHẬN XÉT CỦA GIẢNG VIÊN ... int[] arr = new int [2] ; while ((str = sr.ReadLine()) != null) { count++; while (true) { pos = str.IndexOf(","); if (pos == -1) break; subStr = Convert.ToInt 32( str.Substring(0, pos)); arr[i] = subStr; i++; str = str.Substring(pos + 1); } br.insert(arr[0], arr[1], count); pos = 0; i = 0; } int idCity = Convert.ToInt 32( txtIDCity.Text); br .search( br.root, idCity);} Page 12 of 14 Quick Search NIIT Cần Thơ... sw.WriteLine(txtIDCity.Text + "," + txtSaleFigure.Text + ","); sw.Flush(); sw.Close(); fs.Close(); txtIDCity.Text = null; txtSaleFigure.Text = null; } Page 11 of 14 Quick Search NIIT Cần Thơ SEARCH RECORD Chức năng search được phát triển dựa trên cây tìm kiếm nhị phân private void bttSearch_Click(object sender, EventArgs e) { BSTree br = new BSTree(); FileStream fs = new FileStream(lstTypeProduce.SelectedItem.ToString()+".txt",.. .Quick Search NIIT Cần Thơ INSERT RECORD Chọn loại sản phẩm sau đó điền ID thành phố và doanh số bán được rồi bấm Insert hệ thống sẽ gọi đến công việc chèn một record vào hệ thống private void bttAcceptInsert_Click(object... Page 14 of 14 . PROJECT REPORT Project 2: Quick Search Group Members: 1. Huỳnh Thuỷ Ngân (S1030061000 02) 2. Nguyễn Chí Nhân (S093006100153) Batch Code: B1100 02 Centre: NIIT Quick Search NIIT Cần Thơ Project. B1100 02 Start Date : 2/ 3 /20 11 End Date: 15/ 02/ 2011 Name of the Coordinator : Mr. Phạm Tiến Phúc Names of Developers : Group 1 – B1100 02 Date of Submission: 16/ 02/ 2011 Page 2 of 14 Quick Search. Convert.ToInt 32( txtIDCity.Text); br .search( br.root, idCity);} Page 12 of 14 Quick Search NIIT Cần Thơ Page 13 of 14 CONFIGURATION Hardware : P IV – 3.0 GHz 865/915 Chipset 800 MHz FSB 5 12 MB RAM (2* 25 6MB)

Ngày đăng: 20/08/2014, 12:11

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

  • Đang cập nhật ...

Tài liệu liên quan