文章
61
粉丝
137
获赞
18
访问
40.0k
#include<bits/stdc++.h>
using namespace std;
int main() {
list<int> li1;
list<int> li2;
list<int> li;
int len1;
int len2;
int len;
int tmp;
//建立链表
cin >> len1;
for(int i = 0; i < len1; i++){
cin >> tmp;
li1.push_back(tmp);
}
cin >> len2;
for(int i = 0; i < len2; i++){
cin >> tmp;
li2.push_back(tmp);
}
//2路归并
len = len1 + len2;
while(len-- > 0){
if(li1.empty() || li2.empty())
break;
if(*li1.begin() <= *li2.begin()){
li.push_back(*li1.begin());
li1.pop_front();
}else{
li.push_back(*li2.begin());
li2.pop_front();
}
}
//将所有非空链表中的元素依次加入li中
while(!li1.empty()){
li.push_back(*li1.begin());
li1.pop_front();
}
while(!li2.empty()){
li.push_back(*li2.begin());
li2.pop_fr...
登录后发布评论
暂无评论,来抢沙发