请问C++ STL的stack怎么确定一个元素是不是在栈里?请举例说明
4个回答
展开全部
堆栈就不应该去用查找,如果使用堆栈出现查找,说明你的算法有问题。
硬要使用 可以用 vector 或者 list模拟堆栈
硬要使用 可以用 vector 或者 list模拟堆栈
追问
嗯 可以用find() 我试了 。不过还是十分感谢哈
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-08-16
展开全部
只能用find了
stack<E> s;
E e;
判断:
std::find( s.begin(), s.end(), e ) != s.end ()
stack<E> s;
E e;
判断:
std::find( s.begin(), s.end(), e ) != s.end ()
更多追问追答
追问
find返回的是元素地址 请问如果查找的元素不存在返回什么
追答
s.end()
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
stack 自己不能。可以开个 map 辅助判断。
追问
谢谢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
stack?有查找功能的stack就不叫stack了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询