"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيف يمكن العثور على القيمة القصوى أو الدنيا بكفاءة داخل ناقل C++؟

كيف يمكن العثور على القيمة القصوى أو الدنيا بكفاءة داخل ناقل C++؟

تم النشر بتاريخ 2024-11-08
تصفح:330

How to efficiently find the maximum or minimum value within a C   vector?

كيفية استرداد القيم القصوى أو الدنيا في متجه في لغة C

في لغة C، العثور على القيمة القصوى أو الدنيا داخل المتجه هو أمر مهمة مشتركة. في حين أن المصفوفات والمتجهات تشترك في أوجه التشابه، فإن الحصول على هذه القيم يختلف قليلاً بين بنيتي البيانات.

المتجهات

لاسترداد الحد الأقصى أو الأدنى للقيمة في المتجه، يمكنك استخدم الدالات std::max_element() أو std::min_element() من رأس . تأخذ هذه الوظائف التكرارات إلى بداية ونهاية المتجه كوسيطات وتعيد مكررًا يشير إلى العنصر ذي القيمة القصوى أو الدنيا.

#include 
#include 

int main() {
  std::vector vector = {1, 2, 3, 4, 5};

  // Getting the maximum value
  int max = *std::max_element(vector.begin(), vector.end());
  std::cout ::iterator it_max = std::max_element(vector.begin(), vector.end());
  std::cout 

Arrays

في حالة المصفوفات، لا يمكنك استخدام std::max_element() أو std::min_element() مباشرة لأنها تتطلب تكرارات. بدلًا من ذلك، يمكنك استخدام حلقة للتكرار عبر المصفوفة والعثور على القيمة القصوى أو الدنيا يدويًا.

int main() {
  int array[5] = {1, 2, 3, 4, 5};

  // Getting the maximum value
  int max = array[0];
  for (int i = 1; i  max) {
      max = array[i];
    }
  }
  std::cout 
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3