ในหัวข้อนี้นักเรียนจะได้รู้จักกับขั้นตอนวิธีพื้นฐานในการจัดเรียงข้อมูล (sort) และการค้นหาข้อมูล (search) ซึ่งเป็นกิจกรรมที่สัมพันธ์กันที่ใช้ในการแก้ปัญหาที่พบบ่อย ในชีวิตประจําวัน
การจัดเรียงข้อมูลเป็นสิ่งที่พบอยู่เสมอ เมื่อต้องประมวลผลข้อมูลจํานวนมาก เช่น เมื่อครูตรวจข้อสอบและต้องการบันทึกคะแนนลงในรายงานที่เรียงชื่อนักเรียน ตามลําดับเลขประจําตัว หรือเมื่อนักเรียนเก็บข้อมูลจาก แบบสํารวจ และต้องการเรียงแบบสํารวจตามเงื่อนไข ที่ต้องการการเรียงลําดับข้อมูลด้วยเงื่อนไขที่เหมาะสม จะทําให้การค้นหาข้อมูลทําได้อย่างมีประสิทธิภาพ
นักเรียนจะเลือกข้อมูลที่มีค่าน้อยที่สุดมาไว้เป็นอันดับแรกและขีดทับข้อมูลที่เลือกมาแล้ว จากนั้นในรายการข้อมูลที่เหลืออยู่ จะเลือกข้อมูลที่มีค่าน้อยที่สุดมาเป็นข้อมูลในรายการคําตอบอันดับที่สอง จากนั้น ก็จะเลือกข้อมูลที่น้อยที่สุดที่เหลือมาเป็นอันดับที่สาม ไปเรื่อย ๆ การจัดเรียงแบบเลือกแสดงดังตัวอย่างที่ 2.10
การเรียงลําดับแบบแทรก เป็นการนําข้อมูลที่ยังไม่ได้ถูกพิจารณามาแทรกในตําแหน่งที่ถูกต้อง โดยค่าของข้อมูลที่ กําลังพิจารณาต้องมากกว่าหรือเท่ากับค่าของข้อมูลตัวหน้า และน้อยกว่าหรือเท่ากับค่าของข้อมูลตัวหลังในรายการที่เรียงลําดับแล้ว การจัดเรียงข้อมูลแบบแทรกแสดงดังตัวอย่างที่ 2.11
ในหัวข้อ 2.4.1 นักเรียนได้ศึกษาการค้นหาข้อมูล target ในรายการ A แล้ว ขั้นตอนวิธีดังกล่าวเรียกว่าขั้นตอน วิธีค้นหาแบบตามลําดับ (Sequential search) ขั้นตอนวิธีดังกล่าวจะพิจารณาข้อมูลทุกตัวในรายการที่ละตัว ซึ่งเป็นขั้นตอนวิธีที่ดีที่สุดที่เป็นไปได้ในกรณีที่ข้อมูลไม่มีการเรียงลำดับ
อย่างไร โดยใช้จํานวนครั้งในการ อย่างไรก็ตามในกรณีที่รายการ A มีการเรียงลําดับข้อมูล ทายน้อยที่สุด แล้ว จะมีขั้นตอนวิธีในการค้นหาที่มีประสิทธิภาพดีกว่ามาก
จากตัวอย่าง 2.9 ลองพิจารณากลยุทธ์ในการทายที่เริ่มทายตั้งแต่ 1 2 3 ไปจนถึง 100 วิธีการนี้ ถ้าคําตอบเป็น 95 นักเรียนจะต้องทายถึง 95 ครั้งในทํานองกลับกัน ถ้าใช้กลยุทธ์ในการทายจากมากไปหา น้อย กล่าวคือ เริ่มทายตั้งแต่ 100 99 ลงไปจนถึง 1 ถ้าคําตอบมีค่าน้อย นักเรียนก็จะต้องใช้จํานวนครั้ง ในการทายมาก สังเกตว่าด้วยกลยุทธ์ทั้งสองแบบ นักเรียนไม่ได้ใช้ประโยชน์จากสมบัติการเรียงลําดับ ของตัวเลขเลย
กลยุทธ์ที่มีประสิทธิภาพมากกว่าในการเล่นเกมทายเลขคือเริ่มต้นทายตัวเลขที่อยู่ตรงกลางของขอบเขต ที่เป็นไปได้ ถ้าตัวเลขที่ทายไม่ถูกต้อง ให้พิจารณาปรับขอบเขตของคําตอบที่เป็นไปได้จากผลการทายที่ได้ รับ เช่น ถ้าขอบเขตของคําตอบอยู่ระหว่าง 1 - 7 และทายว่าคําตอบคือ 4 แต่พบว่า 4 เป็นคําทายที่มาก เกินไป จะสามารถปรับขอบเขตได้เป็น 1 - 3 แนวคิดดังกล่าวสามารถแสดงเป็นกลยุทธ์การทายเลขได้ดังรูป 2.6 ที่ใช้จํานวนการทายไม่เกิน 3 ครั้ง ซึ่งจะเป็นกรณีที่แย่ที่สุด (Worst case) ของกลยุทธ์นี้
ถ้านักเรียนต้องการค้นหาข้อมูล target ในรายการที่เรียงลําดับแล้ว กลยุทธ์การทายเลขที่กล่าวมา ข้างต้นสามารถประยุกต์ใช้ในการค้นหา target ได้โดยการทายดัชนีของ target ในรายการ A ที่เรียงลําดับ แล้ว กล่าวคือ ถ้ารายการ A มีข้อมูล n จํานวน เมื่อเริ่มต้นดัชนีที่เป็นไปได้ของ target จะมีค่าระหว่าง 1 - n นักเรียนสามารถทายดัชนี เที่อยู่ตรงกลางของขอบเขตนี้ หลังจากนั้นนักเรียนสามารถตัดสินคําตอบว่าดัชนี ที่ทายไปนั้นเป็นดัชนีที่ถูกต้อง เป็นดัชนีที่มีค่าน้อยเกินไป หรือเป็นดัชนีที่มีค่ามากเกินไปโดยเปรียบเทียบ target กับข้อมูลลําดับที่ 1 ในรายการ และนําผลที่ได้ไปปรับขอบเขตของดัชนีที่เป็นไปได้เพื่อใช้ในการทาย รอบถัดไป พิจารณาตัวอย่างการค้นหา John จากรายการข้อมูลที่เรียงลําดับตามพจนานุกรมดังต่อไปนี้