#include <algorithm>
#include <vector>
class Solution {
  public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     *
     * @param herd1 int整型vector
     * @param herd2 int整型vector
     * @param herd3 int整型vector
     * @return double浮点型
     */
    double findMedianSortedArray(vector<int>& herd1, vector<int>& herd2,
                                 vector<int>& herd3) {
        // write code here
        vector<int>ve;
        int l1 = herd1.size();
        int l2 = herd2.size();
        int l3 = herd3.size();
        for (int i = 0; i < l1; ++i)
            ve.push_back(herd1[i]);
        for (int i = 0; i < l2; ++i)
            ve.push_back(herd2[i]);
        for (int i = 0; i < l3; ++i)
            ve.push_back(herd3[i]);
        int n = ve.size();
        sort(ve.begin(), ve.end());
        // return ve[n / 2-1];
        if (n % 2 == 1)
            return ve[n / 2];
        else
            return (ve[n / 2] + ve[n / 2 - 1]) * 1.0 / 2 ;
    }
};

一、题目考察的知识点

数组

二、题目解答方法的文字分析

和前面一个题的思路一样,就是把所有数组存进去一个数组,然后进行排序,最后输出中间值就行

三、本题解析所用的编程语言

c++