Page 26 - โครงสร้างข้อมูลและขั้นตอนวิธี
P. 26

15-16 โครงสร้างข​ ้อมูลแ​ ละข​ ั้นต​ อนว​ ิธี

 Function MaxSearch (A, n)
  1 BEGIN
  2 	 x := A[1]
  3 	 FOR i := 2 TO n DO
  4 	 BEGIN
  5 		 IF A[i] > x THEN
  6 			 x := A[i]
  7 	 END
  8 	 RETURN x
  9 END

       การท​ �ำงาน
       บรรทัด​ที่ 2	​ก�ำหนดใ​ห้ส​ มาชิก​ตัวแ​ รกเ​ป็นค​ ่าม​ ากส​ ุด
       บรรทัดท​ ี่ 3-7	 ​ก�ำหนดการ​ท�ำ​ซํ้าเริ่มต​ ั้งแต่​สมาชิก​ตัวท​ ่ี 2 จนถึง n
       บรรทัดท​ ี่ 5 	 เปรียบเ​ทียบค​ ่า​มากส​ ุด (x) กับค​ ่าป​ ัจจุบันข​ องอ​ าร์เรย์ (A[i])
       บรรทัด​ท่ี 6 	 ถ้าค​ ่า​ปัจจุบันข​ องอ​ าร์เรย์​มากกว่า เปล่ียนค​ ่าม​ าก​ท่ีสุดใ​ห้เ​ป็นค​ ่า​ปัจจุบันข​ องอ​ าร์เรย์
       บรรทัด​ที่ 7 	 ย้อนก​ ลับไ​ปบ​ รรทัดท​ ี่ 3 โดยเ​ปล่ียนค​ ่า​ดัชนีใ​ห้​ช้ีตัว​ถัดไ​ป
       บรรทัดท​ ี่ 8 	 ถ้า​ท�ำ​ซํ้าจน​ครบ​ทุกส​ มาชิก​แล้ว ​ส่ง​ค่า​กลับ​เป็นค​ ่าม​ ากท​ ี่สุด
       การ​ท�ำงานข​ องข​ ั้นต​ อนว​ ธิ ี
       ข้อมูล:	 15, 19, 9, 7, 23, 64, 11, 53
       เริ่มต​ ้น

              	 15	 19	 9	 7	 23	 64	 11	 53

               มากที่สุด

            ก�ำหนดใ​ห้ 15 เป็น​ค่าม​ ากท​ ี่สุด
       รอบ​ท่ี 1

              	 15	 19	 9	 7	 23	 64	 11	 53

            - เปรียบ​เทียบ 15 กับ 19 ซึ่ง 19 มี​ค่า​มากกว่า​ดัง​นั้น​ให้​ค่าม​ ากท​ ่ีสุด​เป็น 19
       รอบ​ท่ี 2

              	 15	 19	 9	 7	 23	 64	 11	 53

            - เปรียบ​เทียบ 19 กับ 9 ซ่ึง 19 มีค​ ่าม​ ากกว่า ​ดัง​น้ัน ​ค่า​มากท​ ่ีสุด​คงเ​ดิม
   21   22   23   24   25   26   27   28   29   30   31