输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的。
示例1:
输入:1->2->4, 1->3->4
输出:1->1->2->3->4->4
限制:
0 <= 链表长度 <= 1000
class Solution {
public:
string convert(string s, int numRows) {
int n = s.length(), r = numRows;
//边界条件如果只有一个或者numRows太大
if(r==1||r>=n)
return s;
vector<string> ans(r);
for(int i=0,x=0,j=2*r-2;i<n;++i)
{
ans[x]+=s[i];
i%j<r-1 ? ++x:--x;
}
string res;
for(auto &c:ans)
{
res+=c;
}
return res;
}
};