在python-igraph中,在我看来,当你从图形中删除顶点时,顶点会被重命名为使用从0到try{
JSONObject obj = new JSONObject();
obj.put("machineName",machineName);
obj.put("appName", appName);
obj.put("startTime", formattedCurrentDate);
obj.put("portID",portID);
obj.put("ani",ani);
obj.put("dnis", dnis);
obj.put("ctiCallID", ctiCallID);
String strobj = obj.toString();
String uri = wsUri+"/StartCall?";
HttpClient client = new HttpClient();
client.getParams().setConnectionManagerTimeout(1300);
client.getParams().setSoTimeout(13000);
PostMethod method = new PostMethod(uri);
method.addRequestHeader("Content-Type", "application/x-www-form-urlencoded");
method.setQueryString("parameter="+strobj );
int statusCode = client.executeMethod(method);
byte[] responseBody = method.getResponseBody();
output = new String(responseBody);
}
的连续顶点。
要了解我的意思,请考虑以下程序:
n
我可以自己动手簿记,但这已经在图书馆得到了支持吗?基本上,我想知道一系列顶点删除之后,新重命名的顶点在原始图形中对应的内容(就像上面的代码片段一样)。
答案 0 :(得分:0)
最简单的方法是使用name
顶点属性来跟踪对应关系。基本上,如果为顶点指定名称,则可以在以后igraph要求数字顶点ID的位置使用名称:
>>> g.vs["name"] = ["V{0}".format(i) for i in range(4)]
>>> g.vs[g.neighbors("V2")]["name"]
['V0', 'V1', 'V3']
>>> g.delete_vertices(["V1"])
>>> g.vs[g.neighbors("V2")]["name"]
['V0', 'V3']
name
属性在幕后编入索引,因此按名称查找顶点应具有与典型Python字典查找相同的时间复杂度。
对于它的价值,顶点重新编号是底层C库的一个属性,所以Python接口可以做的事情并不多。