map<node,int>
需要运算符重载<
请注意,不同的node,请务必让它们可以区分出来(node a,b a<b or b<a)
如
node
{ int a,int b,int c}
则不能仅比较a,b,忽略c。
否则有可能{1,2,3},{1,2,4}被视为同一个node。
可以使用id变量,每次比较id变量。创建node变量时,++id。此时只用比较一次。
但是如果当结构体所有变量都相同时,则两个结构体被视为一样时,不能加id,所有变量都要进行比较。
对应node本身的‘<‘运算符重载,
可以写成‘<<‘(或其它符号)运算符重载,注意不要写错。
原文地址:https://www.cnblogs.com/cmyg/p/11252867.html
时间: 2024-09-30 10:56:20