ในบทนี้กล่าวถึงเนื้อหาที่เกี่ยวข้องกับหัวข้อต่อไปนี้
การประเมินเวลาที่โปรแกรมใช้ในการทำงาน การลดเวลาที่โปรแกรมต้องใช้ (เรียกว่า running time) Algorithm คือ set ของ instructions (อย่างง่าย) ที่ต้องใช้ดำเนินการเพื่อแก้ปัญหา
คำ algorithm ที่ใช้ในแวดวงวิทยาการคอมพิวเตอร์ หมายถึงวิธีการซึ่งประกอบด้วยขั้นตอนที่ใช้ในการแก้ปัญหาที่เหมาะสำหรับการใช้โปรแกรมคอมพิวเตอร์ สิ่งที่ต้องทำหลังจากมีอัลกอริทึมแล้ว คือ การพิจารณาหาว่าอัลกอริทึมนั้นจะต้องใช้ทรัพยากร (resources) มากน้อยแค่ไหน เช่น เนื้อที่หรือเวลาที่อัลกอริทึมต้องใช้
ปกติแล้ว algorithms ที่เราสนใจนั้นมักจะเกี่ยวข้องอยู่กับวิธีการจัดรูปของข้อมูลที่เกี่ยวข้องในบัญหานั้น ๆ เสมอ รูปแบบของข้อมูลที่ได้รับการจัดรูปดังกล่าวนี้ เรียกว่า โครงสร้างข้อมูล (data structures) ดังนั้น algorithms และ data structures จึงมักจะปรากฏอยู่ด้วยกันเสมอ algorithms ง่าย ๆ อาจทำให้ต้องใช้โครงสร้างข้อมูลที่ซับซ้อน และในทางตรงกันข้าม algorithms ที่ซับซ้อนอาจสามารถใช้โครงสร้างข้อมูลง่าย ๆ ได้