How to remove all elements with specific value from a list in C++

2 Answers

0 votes
#include <iostream>
#include <list>
#include <algorithm>

int main()
{
	std::list<int> lst = { 1, 2, 3, 4, 5, 3, 7, 3 };

	lst.remove(3);

	for (auto elem : lst) {
		std::cout << elem << ' ';
	}
	std::cout << std::endl;
	
	return 0;
}

/*
run:

1 2 4 5 7

*/

 



answered Dec 31, 2017 by avibootz
0 votes
#include <iostream>
#include <list>
#include <algorithm>

int main()
{
	std::list<int> lst = { 1, 2, 3, 4, 5, 3, 7, 3 };

	std::list<int>::iterator end = remove(lst.begin(), lst.end(), 3);

	lst.erase(end, lst.end());

	for (auto elem : lst) {
		std::cout << elem << ' ';
	}
	std::cout << std::endl;
	
	return 0;
}

/*
run:

1 2 4 5 7

*/

 



answered Dec 31, 2017 by avibootz

Related questions

1 answer 154 views
1 answer 128 views
1 answer 159 views
1 answer 196 views
...