บทที่ 5 เทคนิคการค้นหาข้อมูล (Searching Techniques)

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
เรื่อง การแก้ไขปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ
Advertisements

ครั้งที่ 12 การค้นหาข้อมูล (Searching)
บทที่ ๖ หลักการแก้ปัญหาด้วยคอมพิวเตอร์
Data Structure โครงสร้างข้อมูล.
Hashing Function มีหลายฟังก์ชั่น การเลือกใช้ขึ้นอยู่กับความเหมาะสมของข้อมูล ตัวอย่างของฟังก์ชั่นแฮชมีดังนี้ 1. Mod คือการนำค่าคีย์มา mod ด้วยค่า n ใด.
โดย ผู้ช่วยศาสตราจารย์วิชัย บุญเจือ
การเรียงลำดับและการค้นหาแบบง่าย
อ.กิตติพงศ์ เซ่งลอยเลื่อน อาจารย์พิเศษ มหาวิทยาลัยแม่โจ้
สาขาวิชาคอมพิวเตอร์และเทคโนโลยี อ.เลาขวัญ งามประสิทธิ์
บทนำ การเขียนโปรแกรมภาษาซี
หน่วยที่ 1 ระบบคอมพิวเตอร์
การเขียนขยายเค้าโครงเอกสารแต่ละบท ให้มีเนื้อหาสมบูรณ์
น.ส. ภัทริดา ภิญโญภาวศุทธิ
Microsoft Access เอกสารประกอบการบรรยายวิชา Computer in Business
การเขียนผังงานแบบโครงสร้าง
ความรู้เบื้องต้นเกี่ยวกับคอมพิวเตอร์และเทคโนโลยีสารสนเทศ
ขั้นตอนวิธี (Algorithm)
การติดตั้งภาษาไทยและการจัดการดิสก์
โปรแกรม Microsoft Access
การสืบค้น ฐานข้อมูล กลุ่มงานบริการสารสนเทศ สำนักวิทยบริการ มหาวิทยาลัยมหาสารคาม.
Searching.
ประชากร และกลุ่มตัวอย่าง
บทที่ 8 การวิเคราะห์ข้อมูลเชิงคุณภาพ
โครงสร้างการจัดเก็บข้อมูลเชิงกายภาพ
การตรวจสอบโฆษณาทางคลื่นวิทยุ
การเขียนรายงานการวิจัย
บทที่ 7 การเรียงลำดับแบบภายนอก External Sorting
บทที่ 7 การเรียงลำดับภายนอก External sorting
เทคนิคการเรียงลำดับ Sorting Techniques
เทคนิคการค้นหาข้อมูล
การเขียนรายงานต่อฝ่ายริหาร
Charter 7 1 Chapter 7 การจัดการไฟล์ข้อมูล Data File Management.
จำนวนเต็มกับการหารลงตัว
เรื่อง ซอฟต์แวร์ตัวเก่ง
หน่วยการเรียนรู้ที่ 3 ระบบปฏิบัติการวินโดวส์เบื้องต้น
แบบสอบถาม (Questionnaires)
ประวัติและขั้นตอนการพัฒนาโปรแกรมภาษาซี
วิชา เทคโนโลยีสารสนเทศ เรื่อง. หลักการทำงาน และ
ระบบฐานข้อมูล (Database Management System)
บทที่ 3 การทำงานกับฟอร์ม (Form)
โปรแกรม Microsoft Access
1. ความหมายฐานข้อมูล 2. โครงสร้างของฐานข้อมูล
1. การเขียนโปรแกรมภาษา PHP เบื้องต้น
หลักการเขียนโปรแกรม ( )
A Comparison on Quick and Bubble sort on large scale data
หลักการเขียนโปรแกรม ( )
ใส่ชื่อเรื่องงานวิจัย กะทัดรัด มีตัวแปรต้น ตัวแปรตาม อย่างชัดเจน
โปรแกรมฐานข้อมูลที่นิยมใช้
การพัฒนาวิธีเรียนแบบเพื่อนช่วยเพื่อน โดยการกำหนดคะแนนตามลำดับเวลาส่งงานก่อนหลัง ของนักศึกษาชั้นปวช.2 วิทยาลัยเทคโนโลยีสยาม(สยามเทค) ผู้วิจัย นาย ชัชรินทร์
คณิตศาสตร์ (ค33101) หน่วยการเรียนรู้ที่ 7 เรื่อง สถิติ
บทที่ 7 การวิเคราะห์งานและการโปรแกรม แบบมีโครงสร้าง
หลักการแก้ปัญหา.
บทที่ 2 การจัดการสารสนเทศ.
ซอฟแวร์ที่น่าสนใจ จัดทำโดย นางสาวจุติภรณ์ ชาญเชี่ยว คณะพยาบาลศาสตร์ ชั้นปีที่ 1 รหัสนิสิต
รู้จักกับ Microsoft Access 2003
จัดทำโดย นางฐิตารีย์ สอนจันดา 1 มิถุนายน 2556
ความรู้พื้นฐานเกี่ยวกับการโปรแกรมคอมพิวเตอร์
เรื่อง การศึกษาความสัมพันธ์ของ ผลสัมฤทธิ์ทางการ เรียนของผู้เรียนวิชาศึกษาทั่วไปกับ การทำโครงงานในรายวิชาระบบ ฐานข้อมูลของนักศึกษา ระดับ ประกาศนียบัตรวิชาชีพชั้นสูง.
โรงเรียนวังไกลกังวล หัวหิน
Data Structure and Algorithms
ความรู้เบื้องต้นเกี่ยวกับคอมพิวเตอร์และเทคโนโลยีสารสนเทศ
ผู้วิจัย นายไพรัตน์ ศิลปสาตร์ สังกัด วิทยาลัยเทคโนโลยีภูเก็ต
Week 13 Basic Algorithm 2 (Searching)
Dissertation Full text เป็นการ สืบค้นด้วยระบบ IR-Web โดยมีขอบเขต เนื้อหา เป็นฐานข้อมูลวิทยานิพนธ์ฉบับเต็ม อิเล็กทรอนิกส์ 3,850 ชื่อเรื่อง ที่สำนักงาน คณะกรรมการการอุดมศึกษา.
Computer Program คือ ขั้นตอนการทำงาน ของคอมพิวเตอร์
ซอฟต์แวร์ (software) จัดทำโดย นาย ยุทธพงศ์ คำยอง
ส่วนประกอบของคอมพิวเตอร์
การเตรียมข้อมูล (Data preparation)
หลักการทั่วไปเกี่ยวกับการเขียนโปรแกรม
การค้นคืนสารสนเทศ สัมมนาเข้ม ชุดวิชาการจัดเก็บและการค้น คืนสารสนเทศ สมพร พุทธาพิทักษ์ผล 16 กรกฎาคม 2548.
ใบสำเนางานนำเสนอ:

บทที่ 5 เทคนิคการค้นหาข้อมูล (Searching Techniques) โดยนายบุญค้ำ จุลเจือ วิทยาลัยชุมชนตราด

ความนำ อาจเรียกอีกอย่างหนึ่งว่า Storage and Retrieval of Information หรือ Table lookup ซึ่งทั้งหมดคือกระบวนการในการเก็บข้อมูลลงคอมพิวเตอร์ จากนั้นทำการค้นหาข้อมูลที่ต้องการให้เร็วที่สุด การค้นหาข้อมูลอาจเสียเวลามาก เราจึงต้องเลือกวิธีค้นหาข้อมูลที่เหมาะสม เทคนิคการค้นหาข้อมูล 1. การค้นหาแบบลำดับ 2. การค้นหาแบบบล็อก 3. การค้นหาตามความน่าจะเป็น 4. การค้นหาแบบไบนารี

การค้นหาแบบลำดับ (Sequential Search หรือ Linear Search) เป็นวิธีที่นิยมกันมาก เพราะเขียนโปรแกรมง่าย ใช้ได้กับตารางที่เรียงลำดับหรือไม่เรียงลำดับก็ได้ การค้นหาแบบนี้ต้องเปรียบเทียบตารางตั้งแต่ต้นจนพบระเบียนที่ต้องการ ตารางข้อมูลที่ไม่ได้เรียงลำดับจะหาข้อมูลได้ช้ากว่าตารางที่เรียงตามลำดับ

ตารางแบบไม่เรียงลำดับ ตารางที่เรียงตามลำดับ ตารางที่ไม่เรียงตามลำดับ Kอยู่ในตาราง หาช่วงคีย์ <=K หาจนพบ K ไม่อยู่ในตาราง หยุดหาเมื่อคีย์มาค่ามากกว่าK หาจนหมดตาราง 18 3 39 70 27 8 1 30 14 49 16 61 19 90 7 38 23 80 31 95 35 6 4 72 42 60 45 33 53 15 26 100 44 74 40 21 12 78 55 10 ตารางแบบไม่เรียงลำดับ ตารางแบบเรียงลำดับ 1 3 4 6 7 8 10 12 14 15 16 18 19 21 23 26 27 30 31 33 35 38 39 40 42 44 45 49 53 55 60 61 70 72 74 78 80 90 95 100 1. หากต้องการค้นหา 26 ต้องค้นหากี่ครั้ง .......... 2. หากต้องการค้นหา 20 ต้องค้นหากี่ครั้ง ..........

การค้นหาแบบบล๊อก(Block Search) ระเบียนข้อมูลต้องเรียงลำดับกันและรวมกลุ่มเป็นบล็อก การค้นหาจะค้นหาทีละบล๊อกโดยเปรียบเทียบกับคีย์ที่มีค่าสูงสุดในแต่ละบล๊อก เริ่มจากบล็อกที่ 1 ไปเรื่อยๆ จนพบบล็อกใดที่มีค่าคีย์สูงกว่าค่าคีย์ที่ต้องการ จะหยุดเปรียบเทียบกับบล็อกอื่นที่เหลือ แต่จะค้นหาแบบลำดับในบล็อกนั้นแทนจนพบคีย์ที่ต้องการ หากไม่พบแสดงว่าไม่มีค่าคีย์ที่ต้องการในตารางนี้ สมมุติต้องการค้นหาคีย์ 38 ครั้งที่ 1 คีย์สูงสุดในแต่ละบล๊อก คีย์ที่ต้องการ 1 15 < 38 2 33 3 55 >= 4 100

การค้นหาตามความน่าจะเป็น (Probability Serch) เราต้องทราบความถี่ของการเกิดข้อมูลแต่ละคีย์ ข้อมูลคีย์ความถี่มากที่สุดจะเก็บในตำแหน่งแรกของตาราง ข้อมูลที่มีความถี่รองลงมาก็จะถูกเก็บในตำแหน่งถัดไปเรื่อยๆ จนถึงข้อมูลตัวสุดท้าย ด้วยวิธีนี้เราจะค้นหาคีย์ที่ใช้บ่อยได้รวดเร็วมา แต่คีย์ที่ใช้น้อยจะค้นหาได้นาน เช่น ตัวอักษรแรกในชื่อคนไทยจากการสำรวจมักพบตัวอักษร ส ก และขึ้นต้นด้วย ฒ ฬ น้อยมากหรือไม่มีเลย

การค้นหาแบบไบนารี (Binary Search) ค่าคีย์จะต้องเรียงตามลำดับ สามารถค้นหาได้รวดเร็ว โดยการเปรียบเทียบค่าคีย์กับคีย์ตำแหน่งกึ่งกลางตาราง ไปเรื่อยๆจนพบ ตัวอย่างต้องการค่าคีย์ 15 2 6 7 10 12 15 17 25 26 1 3 2

ตารางเปรียบเทียบการค้นหาแบบไบนารี และแบบลำดับ

แบบฝึกหัด