一个算法:有两个未知的IP,例如:ip1:10.80.1.1和ip2:10.30.1.1,怎么能计算机出他们之间所有的ip,然后用sql语句插入数据库,非常感谢!
在qq群里面看到有人发这个请求。正好有点闲暇,google了一下,没找到相关的算法sample, 就花了点时间想了个简单的算法,一运行,测试了很多例子都可以,
程序已经放到资源上去了
http://download.csdn.net/source/678380
那么今天有点时间,就把思路和算法贴出来,这个算法是可以优化的,不过我测试过在 酷睿2双核环境下,计算1.0.0.1- 10.10.10.10也不过是0.x秒的事,就暂时不做改进了
首先定义一个IPV4类(IPV6的原理差不多),主要实现一个方法Compare,就是根据传入的参数对IP进行比较,详细看代码
- public class IP
- { //记录ipV4的4个段 A.B.C.D
- public int A;
- public int B;
- public int C;
- public int D;
- public IP()