之前看到一个题目,大概是:有一个长度为n的数组,数组内的元素取值范围为0到m,且不相等,要求元素经过n次移动后使数组有序(即算法的复杂度为O(n))。看到题目后想了快速排序和归并排序发现并不能满足题目要求,直到有次看书有看到了桶排序然后豁然开朗,所以决定把这些排序算法再写一遍,加深记忆。约定:之后的...
分类:
其他好文 时间:
2014-05-09 10:52:49
阅读次数:
333
Clustering
coefficient的定义有两种;全局的和局部的。全局的算法基于triplet。首先解释triplet。triplet 包含 open triplet 和
closed triplet 两种(A triplet is three nodes that are connecte...
分类:
其他好文 时间:
2014-05-09 05:28:02
阅读次数:
280
上一篇我们记录了冒泡排序算法的实现,这次我们来看直接选择排序是如何实现的。1.直接选择排序:基本思想:直接选择排序也是对被排序的序列进行n-1次遍历,与冒泡排序不同的是,它并不对本次遍历序列内的元素两两进行比较并根据比较的结果来决定是否交换,而是找出本次遍历的序列内元素的最小值,并插入本次遍历的开始...
分类:
其他好文 时间:
2014-05-09 05:25:40
阅读次数:
229
今天偶尔想到了过河问题。记得读小学六年级的时候第一次接触到这个问题--六个老虎过河问题(百度上有详细介绍,本文解决的是一个简单的问题,下一篇文章中将讨论该问题),当时都是从逻辑思维的方法得到正确的解决方法。本文介绍了普遍适用该类问题的方法以及该方法的改进方法,下一篇文章将介绍问题的变型及解法。
向量法(人、狗、鸡、米过河问题)
问题描述:某人带狗、鸡、米用船来过河,只有...
分类:
其他好文 时间:
2014-05-08 17:17:13
阅读次数:
351
题目链接:点击打开链接
题意:
给定一个字符串str 求字符串str的
循环节个数为 1-len 个的
最长子串长度
思路:套用kmp的性质
#include
#include
#include
using namespace std;
#define n 1300
void getnext(char str[n],int next[n]){
int m=strlen(str);...
分类:
其他好文 时间:
2014-05-08 17:12:53
阅读次数:
330
问题描述:给出模板串A和子串B,长度分别为lenA和lenB,要求在线性时间内,对于每个A[i](0求一个字符串的最长回文子串和最长重复子串。
算法讲解:设next[i]为满足B[i..i+z-1]==B[0..z-1]的最大的z值(也就是B的自身匹配)。设目前next[0..lenB-1]与ex[0..i-1]均已求出,要用它们来求ex[i]的值。
设p为目前A串中匹配到的最远位置...
分类:
其他好文 时间:
2014-05-08 16:10:14
阅读次数:
301
Android MD5加密算与J2SE平台一模一样,因为Android 平台支持 java.security.MessageDigest这个包。实际上与J2SE平台一模一样。...
分类:
其他好文 时间:
2014-05-08 16:08:47
阅读次数:
544
求两节点的最短通路,对于无权图,可以通过图的广度优先遍历求解。含权图一般通过Dijkstra算法求解。
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
public class Sho...
分类:
其他好文 时间:
2014-05-08 15:59:09
阅读次数:
352
题目:
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1686
题意:
输入t,是测试组数。每组测试,依次输入 字符串s1和s2。求出s2中s1的个数,可以有重叠。
思路:
KMP算法。
代码:
#include
#include
#include
using namespace std;
char s1[1001...
分类:
其他好文 时间:
2014-05-08 15:55:31
阅读次数:
285