สาขาวิชาคอมพิวเตอร์และเทคโนโลยี อ.เลาขวัญ งามประสิทธิ์

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
การเรียงลำดับข้อมูล (Sorting).
Advertisements

เรื่อง การแก้ไขปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ
อัลกอริทึม ITS101 2/2011.
ป.2 บทที่ 1 “จำนวนนับ ไม่เกิน1,000”
ป.3 บทที่ 1 “จำนวนนับ ไม่เกิน100,000”
สาขาวิชาคอมพิวเตอร์ คณะวิทยาศาสตร์และเทคโนโลยี
การศึกษาและประยุกต์ใช้ขั้นตอนวิธีเชิง วิวัฒน์แบบหลายจุดประสงค์บนคลังข้อมูล เจเมทัล Study of Evolutionary Algorithm in Multi- objective on Library jMetal.
สาขาวิชาคอมพิวเตอร์และเทคโนโลยี อ.เลาขวัญ งามประสิทธิ์
DSP 6 The Fast Fourier Transform (FFT) การแปลงฟูริเยร์แบบเร็ว
EEET0485 Digital Signal Processing Asst.Prof. Peerapol Yuvapoositanon DSP3-1 ผศ.ดร. พีระพล ยุวภูษิตานนท์ ภาควิชา วิศวกรรมอิเล็กทรอนิกส์ DSP 6 The Fast.
ครั้งที่ 12 การค้นหาข้อมูล (Searching)
การเรียงลำดับข้อมูล(Sorting)
ป.4 บทที่ 1 “จำนวนนับ เกิน100,000”
Hashing Function มีหลายฟังก์ชั่น การเลือกใช้ขึ้นอยู่กับความเหมาะสมของข้อมูล ตัวอย่างของฟังก์ชั่นแฮชมีดังนี้ 1. Mod คือการนำค่าคีย์มา mod ด้วยค่า n ใด.
การเรียงลำดับและการค้นหาแบบง่าย
การจัดเรียงข้อมูล Sorting.
สาขาวิชาคอมพิวเตอร์และเทคโนโลยี อ.เลาขวัญ งามประสิทธิ์
ทบทวน Array.
บทที่ 2 หลักการแก้ปัญหา
ลิมิตและความต่อเนื่อง
หลักการทำงานคอมพิวเตอร์
กราฟถ่วงน้ำหนัก เสนอต่อ อ.ธรรมนูญ ผุยรอด จัดทำโดย
การจำลองความคิด
Arrays.
? คอมพิวเตอร์ คอมพิวเตอร์ คือ อะไรนะ ?
ความรู้เบื้องต้นเกี่ยวกับคอมพิวเตอร์และเทคโนโลยีสารสนเทศ
ขั้นตอนวิธี (Algorithm)
CSC201 Analysis and Design of Algorithms Greedy, Divide and Conquer
การจำแนกบรรทัดข้อความ
อาร์เรย์ หรือแถวลำดับ (Array)
Algorithm มหาวิทยาลัยเนชั่น Java Pre-Test 49 (Series 1, 2 )
ผังงาน (Flowchart) มหาวิทยาลัยเนชั่น หลักการภาษาชุดคำสั่ง
การวิเคราะห์ข้อสอบ ดร.ปรัชญนันท์ นิลสุข
การจัดเรียงข้อมูล Sorting Internal Sorting External Sorting.
บทที่ 7 การเรียงลำดับแบบภายนอก External Sorting
บทที่ 7 การเรียงลำดับภายนอก External sorting
เทคนิคการเรียงลำดับ Sorting Techniques
เทคนิคการค้นหาข้อมูล
บทที่ 5 เทคนิคการค้นหาข้อมูล (Searching Techniques)
เรื่องข้อมูลและสาระสนเทศ
บทที่ 2 หลักการแก้ปัญหา
ภาษาโลโก เป็นภาษาคอมพิวเตอร์ระดับสูงที่เหมาะสำหรับใช้ในการเรียนรู้ พัฒนาสติปัญญา และความคิดสร้างสรรค์ ช่วยให้นักเรียนเข้าใจหลักการการเขียนโปรแกรม ผู้เขียนโปรแกรมจะสามารถลองผิดลองถูก.
Week 12 Engineering Problem 2
Week 12 Engineering Problem 2
Dijkstra Shortest Path Algorithm
หลักการเขียนโปรแกรม ( )
A Comparison on Quick and Bubble sort on large scale data
การเรียงข้อมูล 1. Bubble Sort 2. Insertion Sort 3. Heap Sort
ต้นไม้ Tree (2) ผู้สอน อาจารย์ ยืนยง กันทะเนตร
A QUICK OVERVIEW OF PDP-8 ARCHITECTURE
สาขาวิชาเทคโนโลยี สารสนเทศ คณะเทคโนโลยีสารสนเทศ และการสื่อสาร.
… Cache …L1,L2.
หลักการเขียนโปรแกรม ( )
การค้นในปริภูมิสถานะ
การสอนโดยใช้บทเรียนโปรแกรม
แนะนำรายวิชา การออกแบบและวิเคราะห์ขั้นตอนวิธี. รหัสวิชา ชื่อวิชา Design and Analysis of Algorithm หน่วยกิต 3 (2-2-5) ภาคเรียน 2 ปี 2556 เริ่ม 4.
ประโยชน์ของคอมพิวเตอร์
เครือข่ายคอมพิวเตอร์
สารสนเทศ ข้อมูลและสารสนเทศ
การจัดเรียงข้อมูล (sorting)
ความรู้เบื้องต้นเกี่ยวกับคอมพิวเตอร์และเทคโนโลยีสารสนเทศ
ต้นไม้ Tree [3] ผู้สอน อาจารย์ ยืนยง กันทะเนตร
การค้นในปริภูมิสถานะ
Week 13 Basic Algorithm 2 (Searching)
การแบ่งแยกและเอาชนะ Divide & Conquer
การแบ่งแยกและเอาชนะ Divide & Conquer
Wattanapong suttapak SE, ICT University of Phayao.
การเตรียมข้อมูล (Data preparation)
ค32213 คณิตศาสตร์สำหรับคอมพิวเตอร์ โรงเรียนปลวกแดงพิทยาคม
Dr.Surasak Mungsing CSE 221/ICT221 การวิเคราะห์และออกแบบขั้นตอนวิธี Lecture 05: การวิเคราะห์ความซับซ้อนของ ขั้นตอนวิธีการเรียงลำดับข้อมูล.
ใบสำเนางานนำเสนอ:

สาขาวิชาคอมพิวเตอร์และเทคโนโลยี อ.เลาขวัญ งามประสิทธิ์ Sorting สาขาวิชาคอมพิวเตอร์และเทคโนโลยี อ.เลาขวัญ งามประสิทธิ์

ประเภทของการเรียงลำดับข้อมูล Internal Sort แต่ละขั้นตอนการทำงานที่เกิดขึ้น หมายถึงเกิดขึ้นภายใน main memory External Sort กรณีข้อมูลมีจำนวนมาก ไม่สามารถเก็บไว้ภายใน main memory ได้หมด ดังนั้นจะต้องมีข้อมูลบางส่วนเก็บไว้ที่ secondary storage

Internal Sort Bubble Sort : O(n2) Selection Sort : O(n2) Insertion Sort : O(n2) Merge Sort : O(n log n) Quick Sort : O(n log n)

Bubble Sort Speed: O(n2), extremely slow Space: The size of initial array Coding Complexity: Simple เปรียบเทียบข้อมูลเป็นคู่ที่อยู่ติดกันในแต่ละรอบการทำงาน หากอยู่ผิดลำดับให้สลับตำแหน่งกัน

Selection Sort จัดเป็นวิธีหนึ่งที่มีอยู่ในสัญชาตญาณการจัดเรียงโดยธรรมชาติของมนุษย์ ค้นหาตัวเลขที่มีค่าน้อย/มากที่สุดตั้งแต่ตัวแรกไปจนถึงตัวสุดท้าย สลับตำแหน่งตัวเลขที่มีค่าน้อย/มากที่สุด ใช้จำนวนรอบการทำงานมาก ไม่เหมาะกับการเรียงข้อมูลที่มีปริมาณมาก

Insertion Sort เทคนิคการเรียงไพ่ด้วยมือ นำ selection sort มาปรับปรุง แทนที่จะอ่านข้อมูลทุกตัวเพื่อหาค่าน้อย/มากที่สุด ก็จะเปรียบเทียบค่ากับตำแหน่งถัดไปแทน สลับตำแหน่งให้อยู่ในตำแหน่งที่เหมาะสม

Quick Sort เป็น divide-and-conquer algorithm (Dijkstra’s algorithm ตัวอย่างของ greedy algorithm) มีการเลือกข้อมูลตัวหนึ่งเรียกว่า Pivot ที่ใช้เป็นตัวแบ่งแยกชุดข้อมูลที่เรามีออกเป็นส่วน คือ ข้อมูลที่มีค่าน้อยกว่า Pivot และข้อมูลที่มีค่ามากกว่า Pivot เรียงข้อมูลแต่ละส่วนย่อยๆ

Quick Sort : Picking the pivot Median-of-Three Partitioning 8, 1, 4, 9, 7, 3, 5, 2, 6, 0 ข้อมูลซ้ายสุด คือ เลข 8 ข้อมูลขวาสุด คือ เลข 0 ข้อมูลตรงกลาง คือ ตำแหน่งที่ (10+1)div 2 คือ เลข 7 ดังนั้น Pivot คือ 7

Merge Sort เป็น divide-and-conquer algorithm เช่นเดียวกับ quick sort แบ่งข้อมูลออกเป็นส่วนๆ แล้วจัดเรียงข้อมูลส่วนย่อยๆนั้น

xSortLab Simulation http://www.cs.iupui.edu/~aharris/n301/alg/tmcm-java-labs/labs/xSortLabLab.html http://www.mwit.ac.th/~jeab/it40206.php