splice : 拼接两个list
api:
void dump(list<int>& li)
{for(auto & i :li)cout<<i<< " ";cout<<endl;
}
int main()
{ list<int> li1 = {1,3,5};list<int> li2 = {2,4,6};
}
1 c.splice(pos,c2);
// li的开头插入li2链表li1.splice(li1.begin(),li2);dump(li1); dump(li2);
输出:
li1: 2 4 6 1 3 5
li2: null
2 c.splice(pos,c2,c2pos);
li1.splice(li1.end(),li2,li2.begin());dump(li1); dump(li2);
输出:
li1: 1 3 5 2
li2: 4 6
3 c.splice(pos,c2, c2beg,c2end)
//li的第二个元素后插入li2链表// 方法1 auto itr = li1.begin();advance(itr,2);li1.splice(itr,li2,li2.begin(),li2.end());dump(li1); dump(li2);
输出:
li1: 1 3 2 4 6 5
li2: null