- 用bfs注意数据范围,当数字超过数字范围或者到达不可能有答案的状态时就不要加进队列里了。
- 不要重复去创建数组,当每次循环要用到新数组时可以覆盖原来的数组,数组的创建比赋值耗时很多。特别是vector的创建特别耗时,普通数组的创建用时还好。
对于vector,使用copy(a.begin(),a.end(),b.begin())将a数组的所有值赋给b数组;或者for循环赋值
对于普通数组,使用memcpy(b,a,sizeof(b))将a数组的所有值赋值给b数组,使用memset(b,0,sizeof(b))将b数组的所有值赋值成0,第二个参数为要赋的常数 - int arr[100]={1},只有第一个元素是1,其他元素是0,要想全初始化为1先定义数组然后memset