c语言-ip地址网段匹配有什么高效的算法

问题描述

ip地址网段匹配有什么高效的算法

给定ip地址返回所属子网(可能多个网段组成,比如学校图书馆网络有多个网段),有什么效率高的算法?最好是O(1),

解决方案

如果内存够的话,考虑建立一个表,直接查表,这样效率最高。

解决方案二:

KMP-----匹配的高效算法

时间: 2024-11-05 04:52:50

c语言-ip地址网段匹配有什么高效的算法的相关文章

IP地址正则表达式匹配方法_正则表达式

正则表达式(Regular Expression,在代码中常简写为regex.regexp或RE)是计算机科学的一个概念.正则表达式使用单个字符串来描述.匹配一系列符合某个句法规则的字符串.在很多文本编辑器里,正则表达式通常被用来检索.替换那些符合某个模式的文本.许多程序设计语言都支持利用正则表达式进行字符串操作.在很多文本编辑器里,正则表达式通常被用来检索.替换那些符合某个模式的文本. 正则表达式 ^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[

IP地址正则表达式匹配方法

正则表达式(Regular Expression,在代码中常简写为regex.regexp或RE)是计算机科学的一个概念.正则表达式使用单个字符串来描述.匹配一系列符合某个句法规则的字符串.在很多文本编辑器里,正则表达式通常被用来检索.替换那些符合某个模式的文本.许多程序设计语言都支持利用正则表达式进行字符串操作.在很多文本编辑器里,正则表达式通常被用来检索.替换那些符合某个模式的文本. 正则表达式 ^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[

用C语言得到Linux主机的IP地址

#include <stdio.h>; #include <sys/types.h>; #include <sys/socket.h>; #include <sys/ioctl.h>; #include <netinet/in.h>; #include <net/if.h>; #include <net/if_arp.h>; #include <arpa/inet.h>; #include <errno.

Python正则表达式匹配ip地址实例_python

本文实例讲述了正则表达式匹配ip地址实例.代码结构非常简单易懂.分享给大家供大家参考. 主要实现代码如下: import re reip = re.compile(r'(?<![\.\d])(?:\d{1,3}\.){3}\d{1,3}(?![\.\d])') for ip in reip.findall(line): print "ip>>>", ip PS:关于正则,这里再为大家推荐2款非常方便的正则表达式工具供大家参考使用: JavaScript正则表达式

php求一个网段开始与结束IP地址的方法_php技巧

本文实例讲述了php求一个网段开始与结束IP地址的方法.分享给大家供大家参考.具体如下: 比如:网段(192168.1.5/24),其子网掩码根据24划分为: 11111111.11111111.11111111.00000000(255.255.255.0) 说明:IP地址为32bits,24在划分网段中就表示前面有24个1,后面有8个0. 开始IP地址的算法是:192.168.1.5的二进制与子网掩码的二进制进行"与"运算出来的. 结束IP地址的算法是:子网掩码的二进制先取反,然后

电脑提示IP地址冲突

  在正常使用电脑启动后,出现IP地址冲突的提示,不能正常访问网络. 局域网络中的每一台电脑必须在同一个IP地址网段,并且地址不可以相同.通常情况下不在需要人工设置,操作系统会自动为每一个电脑分配IP地址,出现此故障的原因是网络中的其他电脑手工配置IP,而用户也使用手工配置IP地址,两者的IP地址正好相同,导致冲突.可以在"本地连接 属性"对话框中选择"Internet 协议 (TCP/IP)"选项,单击"属性"按钮. 在打开的协议属性对话框中选

企业在云迁移过程中需解决常见的IP地址问题

在企业将应用和数据在迁移到云端期间,许多组织忽视了围绕IP地址的潜在障碍.因此,企业需要了解云计算提供商如何管理IP地址分配.而在从本地数据中心迁移到公共云的工作负载迁移过程中,企业经常忽略IP地址问题. 用户的云计算提供商和云实例的活动通常受到IP地址范围和可用性的限制,因此用户的工作负载在公共云中使用的地址通常与其在场景中使用的地址(通常是动态的)不同. 例如,当用户将内部服务(如Web服务器)迁移到公共云(如Amazon Web Services)时,最好希望其内部服务的IP地址随迁移和公

云迁移:克服常见IP地址问题

在迁移到云端期间,许多组织都忽略了围绕IP地址的潜在障碍.开始云迁移,要了解云提供商如何管理地址分配. 在工作负载从本地数据中心迁移到公有云期间,企业常常忽略IP地址问题. 你的云提供商和你的云实例活动通常限制了IP地址的范围和可用性,因此公有云中工作负载所使用的地址通常都与你本地使用的不同--通常是动态的. 例如,当你迁移内部服务,如网络服务器到像AWS公有云时,理想情况下,你希望内部服务的IP地址可以随着迁移而移动,同时对于那个公有云实例可以应用这一地址.但这通常不可发生.相反,相反,公有云

asp实现检查ip地址是否为内网或者私有ip地址的代码分享_应用技巧

asp检查ip地址是否为私有/内网ip地址源代码. 内网/私有IP地址网段如下,还有127开头的回环地址: 10.0.0.0-10.255.255.255 172.16.0.0-172.31.255.255 192.168.0.0-192.168.255.255 实现代码: <% function IpToNumber(ip)'IP地址转为数字 arr=split(ip,".") IpToNumber=256*256*256*clng(arr(0))+256*256*clng(a