網頁

2019年1月31日 星期四

【C++語言】找出陣列最大值

C語言傳統陣列,找出其最大值
#include <cassert>
int max(int list[], int count)
{
  assert(count > 0);
  int ret = list[0];
  for (int i = 1; i < count; ++i) {
    if (list[i] > ret) {
      ret = list[i];
    }
  }
  return ret;
}
但在C++中,常常建議大家使用STL的容器,例如這裡使用std::vector
#include <cassert>
#include <vector>
// Call by reference
int max(std::vector<int>& list)
{
  assert(!list.empty());
  int ret = list.front();
  for (auto i : list) {
    if (i > ret) {
      ret = i;
    }
  }
  return ret;
}
也可以使用algorithm標頭檔中的std::max_element
#include <algorithm>
#include <vector>
int max(std::vector<int>& list)
{
  return *std::max_element(list.begin(), list.end());
}




👉【幫我們一個忙!】👈

👋如果您喜歡這篇文章,請在下方按5個Like!
 ❤您的支持是我們最大的動力!

您只要登入帳號(Facebook、Google),在下方按5個Like,我們就會收到來自LikeCoin基金會的贊助。
您只需要支持我們,完全不會花到錢!