วิธีหาองค์ประกอบสูงสุดของอาร์เรย์

สารบัญ:

วิธีหาองค์ประกอบสูงสุดของอาร์เรย์
วิธีหาองค์ประกอบสูงสุดของอาร์เรย์

วีดีโอ: วิธีหาองค์ประกอบสูงสุดของอาร์เรย์

วีดีโอ: วิธีหาองค์ประกอบสูงสุดของอาร์เรย์
วีดีโอ: JavaScript Arrays - Finding the maximum array element - Exercise 2024, เมษายน
Anonim

การหาค่าสูงสุดหรือน้อยที่สุดในอาร์เรย์เป็นงานทั่วไปในการเขียนโปรแกรม และเนื่องจากภาษาโปรแกรมทั่วไปที่เกี่ยวข้องกับอินเทอร์เน็ตในปัจจุบันคือภาษา PHP ฝั่งเซิร์ฟเวอร์และภาษา JavaScript ฝั่งไคลเอ็นต์ ด้านล่างนี้คือตัวเลือกมากมายสำหรับการแก้ปัญหานี้สำหรับภาษาเหล่านี้

วิธีหาองค์ประกอบสูงสุดของอาร์เรย์
วิธีหาองค์ประกอบสูงสุดของอาร์เรย์

คำแนะนำ

ขั้นตอนที่ 1

จัดระเบียบการวนซ้ำขององค์ประกอบทั้งหมดของอาร์เรย์ เปรียบเทียบค่าของแต่ละรายการที่ตามมากับค่าก่อนหน้า และจดจำค่าสูงสุดในตัวแปรแยกต่างหาก ใน PHP บล็อกของรหัสที่เกี่ยวข้องอาจมีลักษณะเช่นนี้ - ขั้นแรกให้กำหนดอาร์เรย์: $ ค่า = อาร์เรย์ (14, 25.2, 72, 60, 3) จากนั้นกำหนดค่าของตัวแปรแยกต่างหาก องค์ประกอบแรก - จะถือว่าเป็นค่าสูงสุดก่อนที่การวนซ้ำจะเริ่มต้น: $ maxValue = $ values [0]; จัดระเบียบลูปที่เปรียบเทียบค่าที่เก็บไว้ก่อนหน้านี้กับค่าปัจจุบัน จำหรือข้ามค่าปัจจุบันตามผลการเปรียบเทียบ: foreach ($ ค่าเป็น $ val) if ($ val> $ maxValue) $ maxValue = $ val; พิมพ์ค่าสูงสุดที่ตรวจพบ:

เสียงสะท้อน $ maxValue;

ขั้นตอนที่ 2

ใน JavaScript สามารถใช้อัลกอริทึมเดียวกันได้ ตัวอย่างเช่น โดยใช้โค้ดต่อไปนี้:

ค่า var = [14, 25.2, 72, 60, 3];

var maxValue = ค่า [0]

สำหรับ (var i = 1; i <= values.length-1; i ++) {

ถ้า (ค่า > maxValue) maxValue = ค่า ;

}

แจ้งเตือน (maxValue);

ขั้นตอนที่ 3

อย่างไรก็ตาม ไม่จำเป็นต้องจัดระเบียบการตรวจสอบด้วยตนเอง เนื่องจากภาษาโปรแกรมส่วนใหญ่มีฟังก์ชันในตัวที่จะทำสิ่งนี้ให้คุณ ตัวอย่างเช่น ใน PHP คุณสามารถใช้ฟังก์ชัน rsort sorting ตามลำดับจากมากไปน้อย รหัสที่สอดคล้องกันสำหรับอาร์เรย์ที่ใช้ในขั้นตอนแรกอาจมีลักษณะดังนี้: <? Php

$ ค่า = อาร์เรย์ (14, 25.2, 72, 60, 3);

rsort ($ ค่า);

ค่าก้อง $ [0];

?>

ขั้นตอนที่ 4

สำหรับ JavaScript วิธีที่ง่ายที่สุดคือใช้วิธี max ของอ็อบเจ็กต์ Math โดยส่งอาร์เรย์เป็นอาร์กิวเมนต์ไปยังอาร์เรย์โดยใช้วิธีอื่น เช่น applay ตัวอย่างเช่น ด้วยรหัสต่อไปนี้: ค่า var = [14, 25.2, 72, 60, 3];

alert (Math.max.apply ({}, ค่า))