/* * Copyright 2018 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #include "SchedulerUtils.h" #include #include #include #include namespace android { namespace scheduler { int64_t calculate_median(std::vector* v) { if (!v || v->empty()) { return 0; } size_t n = v->size() / 2; nth_element(v->begin(), v->begin() + static_cast(n), v->end()); return v->at(n); } } // namespace scheduler } // namespace android