
[STL_C++]removeElements
Bài tập:
Cho list linkedList
chứa các số nguyên và một số nguyên n
.
Hãy xóa những phần tử có giá trị n
trong list.
Ví dụ:
- Với
linkedList = [2, 5, 6, 5]
vàn = 5
,
thìverifyFunction(linkedList) = [2, 6]
. - Với
linkedList = [1, 2, 3]
vàn = 5
,
thìverifyFunction(linkedList) = [1, 2, 3]
.
Lý thuyết.
Để xóa tất cả phần tử có giá trị nào đó trong list ta dùng hàm remove() (độ phức tạp O(n)
).
Ví dụ như muốn xóa tất cả phần tử có giá trị x
trong list a
, ta làm như sau.
a.remove(x);
Hướng dẫn.
Code mẫu:
list<int> removeElements(list<int> linkedList, int n) {
linkedList.remove(n);
return linkedList;
}
vector<int> verifyFunction(vector<int> v, int n) {
list<int> l(v.begin(), v.end());
l = removeElements(l, n);
vector<int> vec(l.begin(), l.end());
return vec;
}
Post Comment