我有随机String投入的ArrayList.
private ArrayList<String> teamsName = new ArrayList<String>();
String[] helper;
Run Code Online (Sandbox Code Playgroud)
例如:
teamsName.add(helper[0]) where helper[0] = "dragon";
teamsName.add(helper[1]) where helper[1] = "zebra";
teamsName.add(helper[2]) where helper[2] = "tigers" // and so forth up to about 150 strings.
Run Code Online (Sandbox Code Playgroud)
鉴于您无法控制输入(即进入ArrayList的字符串是随机的;斑马或任何顺序的龙),一旦ArrayList填充了输入,我如何按字母顺序排序,排除第一个?
teamsName[0]很好; 排序teamsName[1 to teamsName.size]按字母顺序排列.
谁可以给我解释一下这个?我一直在阅读它,但仍然很难遵循.
文字:ababdbaababa
模式:ababa
ababa的表是-1 0 0 1 2.
我想我理解表是如何构建的,但是,我不明白一旦发生不匹配,如何转换.好像我们甚至在转移时都不使用桌子?
我们什么时候用这张桌子?
我想看看一个给定的顶点,比如V0,是否可以通过图G中的所有其他顶点到达.
我知道我可以遍历图中的每个顶点并执行BFS/DFS以查看V0是否可达.
但是,这似乎效率很低.
我想知道我是否在图上做了SCC算法,如果v0是所有scc的一部分,那么我可以安全地得出结论v0可以通过所有顶点到达?这将是很好的,因为SCC的成本仅为与Tarjan的O(V + E)并且检查v0是否是scc的一部分也将花费线性时间.
我认为这是有道理的,因为SCC意味着顶点是可达的.对这个逻辑的任何确认?
或任何有效的方法?
我知道如果一组顶点是强连通组件的一部分,那么组件中的所有顶点都可以相互到达; 一个循环.
现在,我想使用这个事实,并声称如果图G =(V,E)有一个周期,那么该周期必须在scc内.
换句话说,所有周期都必须是scc的一部分(我的主张).
我想不出我的主张的任何反例,所以我想知道图中是否有任何不属于scc的周期.
或者是我的主张,对吗?
我一直在寻找python的开源代码,其中许多都在src中有.c和.h文件的目录.
例如,有一个名为protocol的目录,它有.c和.h文件(这些.c文件有静态PyObject*).
如果我想导入这个目录,以便我可以使用这些功能,需要什么(或者我如何使用.py文件中的这些.c文件)?
我知道你需要init .py来导入一个目录,所以我这样做是为了导入但不确定如何从.c文件访问对象
例如,他们有一个python代码
arp = protocol.arp(shw, thw, sp, tp, constants.arp.ARPOP_REQUEST)
但是我不理解从.py到.c的转换,因为以下文件(protocol/arp.c)没有名为arp的类(它有静态PyObject*ARPObject_new(PyTypeObject*类型,PyObject*args,PyObject*kwds).有人向我解释这个转变?
#include "Python.h"
#include "structmember.h"
#define PROTOCOL_MODULE
#include "protocolmodule.h"
PyProtocol_newARPObjectFromPacket_RETURN PyProtocol_newARPObjectFromPacket PyProtocol_newARPObjectFromPacket_PROTO;
PyProtocol_injectARP_RETURN PyProtocol_injectARP PyProtocol_injectARP_PROTO;
PyProtocol_ARPCheck_RETURN PyProtocol_ARPCheck PyProtocol_ARPCheck_PROTO;
int PyProtocol_ARPCheck(PyObject *o)
{
return ARPObject_Check(o);
}
/**************
* ARP *
**************/
ARPObject *
PyProtocol_newARPObjectFromPacket(arp_t *arp, int *parsed_length)
{
ARPObject *self;
char *packet = (char *) (arp + 1);
struct in_addr ia;
self = PyObject_New(ARPObject, &ARP_Type);
if (self == NULL)
return NULL;
self->ar_hrd = ntohs(arp->ar_hrd);
self->ar_pro = ntohs(arp->ar_pro); …Run Code Online (Sandbox Code Playgroud)