按照尾部从小到大排序:
class Solution {
public:
int findLongestChain(vector<vector<int>>& pairs) {
sort(pairs.begin(),pairs.end(),cmp);
int ans=1,flag=0;
for(int i =1;i<pairs.size();i++)
{
if(pairs[i][0]>pairs[flag][1])
{
flag=i;
ans++;
}
}
return ans;
}
bool static cmp(vector<int> &A, vector<int> &B)
{
return A[1]<B[1];
}
};
本文介绍了一种解决最长链对问题的算法实现。通过将输入的整数对按尾部数值进行排序,并使用动态规划思想来寻找最长的不相交对链。此算法能够有效地找到最大数量的对,使得每个对都不相交且按照尾部数值递增排列。
4399

被折叠的 条评论
为什么被折叠?



