首页 文章
  • 3 votes
     answers
     views

    NAT后面的Web服务器的HTTP TCP连接

    我的问题与this one相同,但希望增加清晰度以获得答案 . 在阅读了this fantastic article关于NAT Traversal背后的细节以及方法found here的总体概述之后,我编写了在任何指定端口上提供网页的软件,并且想知道是否可以从WAN端连接到Web客户端这个服务器位于NAT路由器后面 . 我发现这个困难的原因是因为: 我不想告诉用户(谁拥有Web服务器)将其路由...
  • 20 votes
     answers
     views

    UDP打孔实现

    我正在尝试完成UDP打孔 . 我的理论基于this article和WIKI page,但我面临着C#编码的一些问题 . 这是我的问题: 使用已发布的代码here我现在能够连接到远程计算机并在同一端口上侦听传入连接(将2个UDP客户端绑定到同一端口) . 由于某种原因,对同一端口的两个绑定相互阻止接收任何数据 . 我有一个响应我的连接的UDP服务器,所以如果我在将任何其他客户端绑定到端口之前先连接...
  • 0 votes
     answers
     views

    TURN Server Nat遍历ICE STUN

    我正在实现一个TURN服务器,我将在我的问题中使用TURN rfc5766术语 . 有一部分我没有得到 . 假设我们有一个连接到TURN服务器的客户端(A)和一个尚未连接到任何东西的对等端(B) . 我们从另一个机制获得对等(B)的自反地址,并使用SIP或电子邮件将其传递给客户端(A) . 无论情况如何 . 接下来假设我们为客户端(A)创建了分配,权限和中继地址 它表示当客户端(A)向对等(B)向...
  • 1 votes
     answers
     views

    二叉搜索树递归混淆

    我认为这是一个愚蠢的问题但很遗憾地说它会清除我的困惑 . 如果您只是查看此代码 void printInOrder(){ printPrivateInOrder(root); } void printPrivateInOrder(Node* n){ if (root != NULL){ if (n->left != NULL){...
  • 1 votes
     answers
     views

    树遍历和序列化

    我试图直截了当地说明如何使用树遍历来唯一地识别树,并且它的关键似乎是树是否是香草二叉树(BT),或者它是否也有更严格的规定 . 是二进制搜索树(BST) . 这个article似乎表明对于BT来说,单个有序,前序和后序遍历不会唯一地标识树(在此上下文中唯一意味着键的结构和值) . 以下是文章的快速摘要: BTs1.我们可以按照预先订购顺序和后序排序对BT进行独特的重建 .2.如果我们还规定遍历跟踪...
  • 37 votes
     answers
     views

    迭代DFS与递归DFS和不同元素顺序

    我编写了一个递归DFS算法来遍历图: void Graph<E, N>::DFS(Node n) { std::cout << ReadNode(n) << " "; MarkVisited(n); NodeList adjnodes = Adjacent(n); NodeList::position p...
  • 1 votes
     answers
     views

    反转深度优先搜索或预订遍历

    假设我有一个高度为2的完整二进制图,如下所示: 0 1 2 3 4 5 6 其中边缘从0到1和0到2,1到3和1到4,2到5和2到6 . 我可以通过执行预先遍历来获得深度优先搜索顺序(0,1,3,4,2,5,6)的节点 . 是否有一些相当简单的方法可以从算法上获得预订遍历,后序遍历或有序遍历的反向,我的意思是在每个级别你先右转,然后离开,这样你最终...
  • 0 votes
     answers
     views

    创建一个程序,允许您执行深度优先搜索遍历和广度优先搜索遍历

    创建一个程序,允许您在下图中执行深度优先搜索/遍历以及广度优先搜索/遍历: 执行深度优先遍历 执行宽度拳头遍历 搜索图1(DFS) 搜索图2(BFS) 退出 当用户选择[1]时,将询问用户他或她想要遍历的图表 . 然后,程序使用Depth First Traversal打印出访问节点的最终顺序 . 当用户选择[2]时,将询问用户他或她想要遍历的图表 . 然后程序使...
  • 4 votes
     answers
     views

    遍历以邻接矩阵表示的图形

    我想使用深度优先和广度优先的方法来遍历图形 . 我以前在一个简单的节点列表上做过这个,但是我从来没有用邻接矩阵试过它,老实说,我甚至不知道从哪里开始 . 这是我的矩阵: 999999999 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 999999999 0 3 1 0 0 0 0 0 0 0 0 0 0 0 1 0 999999999 3 0 1 0 0 0 0 0 0 0...
  • 11 votes
     answers
     views

    最低共同祖先算法

    所以我一直在研究实现最低共同的祖先算法 . 我查看了许多不同的算法(主要是Trajan解决方案的变体或RMQ的变体) . 我使用的是非二叉树 . 我的树通常会在查询之间进行更改,因此预处理不一定是值得的 . 树不应超过50-75个节点 . 我想知道的是我是否应该使用他们的算法或只是坚持自己的算法 . 我的算法 myLCA(node1, node2) { parentNode := [ ] ...
  • 15 votes
     answers
     views

    使用opendir(),readdir()和closedir()高效遍历目录树

    C例程opendir(),readdir()和closedir()为我提供了遍历目录结构的方法 . 但是,readdir()返回的每个dirent结构似乎都没有为我提供一个有用的方法来获取我需要递归到目录子目录的DIR指针集 . 当然,他们给我文件的名称,所以我可以将该名称附加到目录路径和stat()和opendir()它们,或者我可以通过chdir()和roll更改进程的当前工作目录它通过chd...
  • 12 votes
     answers
     views

    Prolog,在列表中找到最小值

    简而言之:如何在列表中找到最小值? (感谢kaarel的建议) 很长的故事: 我在amzi prolog中创建了一个加权图并给出了2个节点,我能够检索路径列表 . 但是,我需要在此路径中找到最小值,但无法遍历列表来执行此操作 . 我可以请您就如何确定清单中的最小值寻求建议吗? 我的代码目前看起来像这样: arc(1,2). arc(2,3). arc(3,4). arc(3,5). arc(3,6...
  • 2 votes
     answers
     views

    查找树的父节点以创建尽可能短的树高

    我有一个无向图表示为欧几里德权重的邻接矩阵 . 我用它来表示更大的完整图形的最小生成树 . 我想要找到的是图中的单个节点,当用作根节点时,创建尽可能短的树高 . 我想出的是使用每个节点作为根执行深度优先遍历,并跟踪所见的最短高度 . 有没有更快的方法来实现这一目标?
  • 4 votes
     answers
     views

    在图中查找所有可能的路径

    我正在寻找一些 algorithm ,这将帮助我在图表中找到 all possible 路径 . 到目前为止我发现的一切并不完全令人满意 . 让我们假设我们有一个像这样的图形(树): 让我们使用像 Breadth-First Search 或 Depth-First Search 这样的算法 . 作为回报,我们会得到类似的东西 1, 2, 4, (2), 5, (2), 6, (2), (1),...
  • 0 votes
     answers
     views

    深度优先搜索图表

    我对这个例子有点困惑 . 通常,图表的深度优先搜索按字母/递增顺序完成 . (从顶点B开始,是否有可能第三次访问顶点M) . 有人可以向我解释一下:
  • 4 votes
     answers
     views

    遍历表达式树并提取参数

    我正在写一种绘图工具 . 我有一个看起来像这样的方法(简化): public void RegisterMapping<TTarget, TSource>(string propertyName, Expression<Func<TSource, object>>...
  • 0 votes
     answers
     views

    Neo4j遍历API

    我是Neo4j的新手,但我花了一些时间阅读文档 . 我想我理解了基本概念,现在我对Cypher查询非常有信心 . 虽然,我在理解Traversal API如何工作方面遇到了问题(好吧,我没有得到预期的结果,所以我想我做错了什么) . 这是我的(非常)简单模型(使用API创建): Node sugar = graphDb.createNode(LabelType.RAW_MATERIAL.getLa...
  • 0 votes
     answers
     views

    家谱上的两个人之间的关系

    我正在为我的父母开发一个小家谱项目(php mysql) . 由于整棵树相当宽,并且不能通过长镜头适合任何屏幕,我想做一个“关系查找器”,一种显示两个任意,可能非常相关的人之间的关系的方式 . 每个祖先都使用他/她自己的个人ID存储在数据库中 . 每个人($ ancestor [$ id])有0-2个父母(int ID)和0-11个孩子(带有int ID的数组): int $ancestor[$i...
  • 1 votes
     answers
     views

    neo4j java遍历返回多个路径而不是一个

    我想遍历一个图并返回链接2个节点的所有路径,其中第一个关系是传出的,第二个是传入的 . 例如,如果关系是Voted并且我想要查看从节点25到节点86的所有可能路径,那么我有 MATCH p=((n {id:"25"}) -[*1..2]-> (m {id:"86"})) RETURN p; 然后我想检查在返回路径中我是否在传出和传入关系中具有相同类型的...
  • 3 votes
     answers
     views

    Neo4j Cypher遍历 - 通过多种关系类型查找路径

    我有一个模式,其中节点通过两种类型的关系连接 - r:A和r:B . 我正在尝试编写一个模式,它将找到从节点N到节点M的每条路径 . 这可以通过以下cypher查询来完成: match path = (n)-[:A|:B*]->(m) return path; 不幸的是,这不是我所需要的 . 我需要找到从(n)到(m)的每条路径,其中深度通过关系r:A可以是无限的,但沿途只能使用有限数量...
  • 3 votes
     answers
     views

    如何在使用neo4j进行遍历的每一步中指定要使用哪种关系类型作为当前节点的函数?

    我想使用neo4j遍历API遍历我的图形,但我需要能够指定在每一步使用哪种关系类型,并且要使用的关系类型需要是当前节点的函数 . 有没有办法做到这一点?
  • 1 votes
     answers
     views

    Neo4J中的Gremlin Traversal

    在我的数据库中,我可以使用本机Neo4J遍历来提取子图,看起来有点像这样: TraversalDescription td = Traversal.description() .depthFirst() .relationships(Relation.REL1, Direction.OUTGOING) .relationships(Relation.REL2, Direction.OUTGOING...
  • 3 votes
     answers
     views

    C#图遍历 - 跟踪任意两个节点之间的路径

    寻找一种好方法来跟踪两个节点之间的广度优先遍历,而不了解图形的任何信息 . 与深度优先(如果它没有平移你可以扔掉路径)你可能在遍历期间有相当多的“开放”可能性 .
  • 2 votes
     answers
     views

    如何在2D数组中找到所有路径?

    我正在尝试编写javascript,它将映射从root到leaf的所有唯一路径,每个节点都可以连接到下一行的相邻节点 . 例如,根可以连接到下一行,如4,2或4,4 . 叶子的独特路径是4,2,4,2,1 4 2 4 6 4 2 7 4 2 1 9 4 2 1 4 我能够将三角形转换为像这样结构的2D数组 . a...

热门问题