upper_bound()

C++ algorithm upper_bound() funksiyasi

❮ Algoritm funksiyalari


Misol

Saralangan vektordagi 7 dan katta birinchi qiymatni toping:

vector<int> numbers = {1, 7, 3, 5, 9, 2};
sort(numbers.begin(), numbers.end());
auto it = upper_bound(numbers.begin(), numbers.end(), 7);
if(it != numbers.end()) {
  cout << *it << " is the first value greater than 7";
} else {
  cout << "No elements found above the upper bound";
}
O‘zingiz sinab ko‘ring »

Ta’rif va qo‘llanilishi

upper_bound() funksiyasi saralangan ma’lumotlar oralig‘ida ko‘rsatilgan yuqori chegaradan katta bo‘lgan birinchi qiymatni topish uchun samarali algoritmdir.

Agar ma’lumotlar oralig‘i oldindan saralanmagan bo‘lsa, funksiya noto‘g‘ri natija qaytarishi mumkin. Ma’lumotlar oralig‘idagi elementlarni saralash uchun sort() funksiyasidan foydalanish mumkin.

Ma’lumotlar oralig‘i iteratorlar orqali belgilanadi.

Sintaksis

upper_bound(iterator start, iterator end, <type> bound);

<type> oraliqdagi ma’lumotlarning tipini bildiradi.

Parametr qiymatlari

Parametr Tavsif
start Majburiy. Ma’lumotlar oralig‘ining boshini ko‘rsatuvchi iterator.
end Majburiy. Ma’lumotlar oralig‘ining oxirini ko‘rsatuvchi iterator. Shu pozitsiyagacha bo‘lgan elementlar qamrab olinadi, lekin aynan shu pozitsiyadagi element qamrab olinmaydi.
bound Majburiy. Yuqori chegarani belgilaydi.

Texnik tafsilotlar

Qaytaradi: Yuqori chegaradan katta bo‘lgan birinchi qiymatni o‘z ichiga olgan elementni ko‘rsatuvchi iterator. Agar bunday element topilmasa, ma’lumotlar oralig‘ining oxirini qaytaradi.

Tegishli sahifalar

Ma’lumotlar tuzilmalari haqida ma’lumotlar tuzilmalari darsligimizda batafsil o‘qing.

Iteratorlar haqida iteratorlar darsligimizda batafsil o‘qing.

Algoritmlar haqida algoritmlar darsligimizda batafsil o‘qing.


❮ Algoritm funksiyalari

W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!