c++ - [C++]传节点索引好还是传节点本身好?哪个更快?

标签 c++ performance graph

哪种方法更快? 这个?

int bfs( nodo& s ){....

还是这个?

int bfs( int index ){....

nodo 是这个结构:

struct nodo{
  int valore;
  vector<int> vic;
  vector<int> nodiEntranti;
  vector<int> disprezzati;
  vector<int> rivali;
  int dt;
  int ft;
  bool visited; 
  nodo(){
        visited=false;
        valore= -1;
        dt=0;
        ft=0;
  }
};

我有这样的结构:

vector<nodo> graph;

P.S:我需要调用此函数 200000 次。

最佳答案

它可能不会有太大变化。

这样做的原因是您正在通过引用传递结构,即传递结构的内存地址而不是整个结构。这与将整数索引传递给节点在性能上应该没有太大差异。

关于c++ - [C++]传节点索引好还是传节点本身好?哪个更快?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23019277/

相关文章:

javascript - 创建随机树?

c++ - 在 Visual Studio C++ 中创建应用程序图标的最佳方式

c++ - 在未记录的 API 中反转结构

c++ - 使用 UNC 路径读取/写入文件 - 在 C++ 中

c++ - 重构MFC,你用的是BOOL还是bool

performance - 为什么要使用内置命令而不是外部程序(在 bash 脚本中)?

R/ggplot2 : geom_function & facet_wrap with multiple sets of parameters per facet

c++ - 如何使用 new 在 C++ 中声明二维数组?

python - 在 cython 中创建小数组需要大量时间

c - 所有对象都具有相同的名称