给定一个n个点m条边的无向图,图中可能存在重边和自环。 请你判断这个图是否是二分图。 输入格式第一行包含两个整数n和m。 接下来m行,每行包含两个整数u和v,表示点u和点v之间存在一条边。 输出格式如果给定图是二分图,则输出“Yes”,否则输出“No”。 数据范围1≤n,m≤105 输入样例:4 4 ...
单向链表(数组模拟)
实现一个单链表,链表初始为空,支持三种操作: (1) 向链表头插入一个数; (2) 删除第k个插入的数后面的数; (3) 在第k个插入的数后插入一个数 现在要对该链表进行M次操作,进行完所有操作后,从头到尾输出整个链表。 注意:题目中第k个插入的数并不是指当前链表的第k个数。例如操作过程中一共插入了 ...
搜索模板 & 拓扑排序
// 深度优先遍历框架void dfs(int x) { v[x] = 1; for (int i = head[x]; i; i = next[i]) { int y = ver[i]; if (v[y]) continue; dfs(y); }}/ ...
zyb的面试 - HDU - 6468
今天zyb参加一场面试,面试官听说zyb是ACMer之后立马抛出了一道算法题给zyb:有一个序列,是1到n的一种排列,排列的顺序是字典序小的在前,那么第k个数字是什么?例如n=15,k=7, 排列顺序为1, 10, 11, 12, 13, 14, 15, 2, 3, 4, 5, 6, 7, 8, 9 ...
kmp模板 & 最小表示法
KMP 模式匹配时间复杂度:O(N + M)求A是否为B的子串,并求出每次出现的匹配位置 1.求Next数组对字符串A求自身匹配,求出Next数组,其中Next[i]表示A中以i为结尾(以i为后缀)的非前缀子串与A的前缀能匹配的最大长度即:Next[i] = max{j}, 其中i < j 且 ...