1. Trang chủ
  2. » Luận Văn - Báo Cáo

Project 2 Quarter 4 Quick Search

13 397 2

Đ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

Thông tin cơ bản

Định dạng
Số trang 13
Dung lượng 199,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

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

Trang 1

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

Trang 2

Project title

Name of the Coordinator : Mr Phạm Tiến Phúc

Names of Developers : Group 1 – B110002

Date of Submission: 16/02/2011

Trang 3

Đâ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

Trang 4

A CKNOWLEDGEMENT

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.

Trang 5

R EQUIREMENTS A NALYSIS

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.

Trang 6

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.

Trang 7

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

Trang 8

Số chức năng: 3

Tên chức năng:

1 Create Index

2 Insert Record

3 Load file to search

Trang 9

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);

}

Trang 10

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 sender, EventArgs e)

{

FileStream fs = new

FileStream(lstTypeProduce.SelectedItem.ToString()+".txt", FileMode.Append,

FileAccess.Write);

StreamWriter sw = new StreamWriter(fs);

sw.WriteLine(txtIDCity.Text + "," + txtSaleFigure.Text +

",");

sw.Flush();

sw.Close();

fs.Close();

txtIDCity.Text = null;

txtSaleFigure.Text = null;

}

Trang 11

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", FileMode.Open,

FileAccess.Read);

StreamReader sr = new StreamReader(fs);

string str;

int subStr;

int pos;

int count = 0;

int i = 0;

int[] arr = new int[2];

while ((str = sr.ReadLine()) != null)

{

count++;

while (true)

{

pos = str.IndexOf(",");

if (pos == -1)

break;

subStr = Convert.ToInt32(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.ToInt32(txtIDCity.Text);

br.search(br.root, idCity);}

Trang 12

Hardware : P IV – 3.0 GHz 865/915 Chipset 800 MHz FSB

512 MB RAM (2* 256MB)

80 GB 7200 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

Trang 13

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

TỪ KHÓA LIÊN QUAN

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

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

TÀI LIỆU LIÊN QUAN

w