E-COM-NET

  • 首页
  • 在线工具
  • Layui镜像站
  • SUI文档
  • 联系我们
hechenghai
hechenghai

母函数详解

转载地址:http://www.wutianqi.com/?p=596

母函数(Generating function)详解 BY TANKY WOO – 2010年08月2日POSTED IN: 我的原创|MY ORIGINAL CREATION, 算法|ALGORITHMS 最近更新:2011.4.3 前段时间写了一篇《背包之01背包、完全背包、多重背包详解》,看到支持的人很多,我不是大牛,只是一个和大家一样学习的人,写这些文章的目的只是为了一是希望让大家学的轻松,二是让自己复习起来更方便。 在数学中,某个序列的母函数是一种形式幂级数,其每一项的系数可以提供关于这个序列的信息。使用母函数解决问题的方法称为母函数方法。 这里先给出两句话,不懂的可以等看完这篇文章再回过头来看: 我们首先来看下这个多项式乘法:  (以下图片都可以点击放大)
1.x的系数是a1,a2,…an 的单个组合的全体。 2. x2的系数是a1,a2,…a2的两个组合的全体。 ……… n. xn的系数是a1,a2,….an的n个组合的全体(只有1个)。 这里先给出2个例子,等会再结合题目分析: 1+x2表示了两种情况:1表示质量为2的砝码取0个的情况,x2表示质量为2的砝码取1个的情况。 所以,前面说的那句话的意义大家可以理解了吧? 接着上面,接下来是第二种情况: 现在以上面的第二种情况每种种类个数无限为例,给出模板:
#include <iostream>
using namespace std;
// Author: Tanky Woo
// www.wutianqi.com
const int _max = 10001; 
// c1是保存各项质量砝码可以组合的数目
// c2是中间量,保存没一次的情况
int c1[_max], c2[_max];   
int main()
{	//int n,i,j,k;
	int nNum;   // 
	int i, j, k;
 
	while(cin >> nNum)
	{
		for(i=0; i<=nNum; ++i)   // ---- ①
		{
			c1[i] = 1;
			c2[i] = 0;
		}
		for(i=2; i<=nNum; ++i)   // ----- ②
		{
 
			for(j=0; j<=nNum; ++j)   // ----- ③
				for(k=0; k+j<=nNum; k+=i)  // ---- ④
				{
					c2[j+k] += c1[j];
				}
			for(j=0; j<=nNum; ++j)     // ---- ⑤
			{
				c1[j] = c2[j];
				c2[j] = 0;
			}
		}
		cout << c1[nNum] << endl;
	}
	return 0;
}


  
  
  
  
③、j 从0到n遍历,这里j就是(前面i個表達式累乘的表達式)里第j个变量,(這裡感謝一下seagg朋友給我指出的錯誤,大家可以看下留言處的討論)。如(1+x)(1+x^2)(1+x^3),j先指示的是1和x的系数,i=2执行完之后变为
(1+x+x^2+x^3)(1+x^3),这时候j应该指示的是合并后的第一个括号的四个变量的系数。. 咱们赶快趁热打铁,来几道题目: 附: 母函数(Generating function)详解

1.鉴于文章图片和排版的问题,对文章进行了重新编辑。 2.看见网上很多朋友在转载时不尊重别人的劳动成果,任意删除文章里关于作者的信息,希望大家在转载时保留文章所有信息,遵守版权规定。

(以下内容部分引至杭电ACM课件和维基百科)

母函数可分为很多种,包括普通母函数、指数母函数、L级数、贝尔级数和狄利克雷级数。对每个序列都可以写出以上每个类型的一个母函数。构造母函数的目的一般是为了解决某个特定的问题,因此选用何种母函数视乎序列本身的特性和问题的类型。

“把组合问题的加法法则和幂级数的t的乘幂的相加对应起来” “母函数的思想很简单—就是把离散数列和幂级数一一对应起来,把离散数列间的相互结合关系对应成为幂级数间的运算关系,最后由幂级数形式来确定离散数列的构造. “

图一 由此可以看出:

由此得到: 图二 母函数的定义: 对于序列a0,a1,a2,…构造一函数: 图三

称函数G(x)是序列a0,a1,a2,…的母函数

第一种: 有1克、2克、3克、4克的砝码各一 枚,能称出哪几种重量?每种重量各有几种可能方案? 考虑用母函数来解决这个问题: 我们假设x表示砝码,x的指数表示砝码的重量,这样: 1个1克的砝码可以用函数1+x表示, 1个2克的砝码可以用函数1+x2表示, 1个3克的砝码可以用函数1+x3表示, 1个4克的砝码可以用函数1+x4表示, 上面这四个式子懂吗? 我们拿1+x2来说,前面已经说过,x表示砝码,x的指数表示砝码的重量!即这里就是一个质量为2的砝码,那么前面的1表示什么?按照上面的理解,1其实应该写为:1*x^0,即1代表重量为2的砝码数量为0个。(理解!) 不知道大家理解没,我们这里结合前面那句话: “把组合问题的加法法则和幂级数的t的乘幂的相加对应起来“

这里说下各项系数的意义: 在x前面的系数a表示相应质量的砝码取a个,而1就表示相应砝码取0个,这里可不能简单的认为相应砝码取0个就该是0*x2(想下为何?结合数学式子)。 Tanky Woo 的程序人生:http://www.wutianqi.com/

几种砝码的组合可以称重的情况,可以用以上几个函数的乘积表示: (1+x)(1+x2)(1+x3)(1+x4) =(1+x+x2+x3)(1+x3+x4+x7) =1+x+x2+2x3+2x4+2x5+2x6+2x7+x8+x9+x10 从上面的函数知道:可称出从1克到10克,系数便是方案数。(!!!经典!!!) 例如右端有2x5 项,即称出5克的方案有2:5=3+2=4+1;同样,6=1+2+3=4+2;10=1+2+3+4。 故称出6克的方案有2,称出10克的方案有1 。

求用1分、2分、3分的邮票贴出不同数值的方案数: 大家把这种情况和第一种比较有何区别?第一种每种是一个,而这里每种是无限的。 图四 以展开后的x4为例,其系数为4,即4拆分成1、2、3之和的拆分数为4; 即 :4=1+1+1+1=1+1+2=1+3=2+2 这里再引出两个概念整数拆分和拆分数: 所谓整数拆分即把整数分解成若干整数的和(相当于把n个无区别的球放到n个无标志的盒子,盒子允许空,也允许放多于一个球)。 整数拆分成若干整数的和,办法不一,不同拆分法的总数叫做拆分数。

图五 我们来解释下上面标志的各个地方:(***********!!!重点!!!***********) ①  、首先对c1初始化,由第一个表达式(1+x+x2+..xn)初始化,把质量从0到n的所有砝码都初始化为1. ②  、 i从2到n遍历,这里i就是指第i个表达式,上面给出的第二种母函数关系式里,每一个括号括起来的就是一个表达式。

④ 、 k表示的是第j个指数,所以k每次增i(因为第i个表达式的增量是i)。

⑤  、把c2的值赋给c1,而把c2初始化为0,因为c2每次是从一个表达式中开始的

(相应题目解析均在相应的代码里分析) 1.  题目:http://acm.hdu.edu.cn/showproblem.php?pid=1028 代码:http://www.wutianqi.com/?p=587 这题大家看看简单不?把上面的模板理解了,这题就是小Case! 看看这题: 2.  题目:http://acm.hdu.edu.cn/showproblem.php?pid=1398 代码:http://www.wutianqi.com/?p=590 要说和前一题的区别,就只需要改2个地方。 在i遍历表达式时(可以参考我的资料—《母函数详解》),把i<=nNum改成了i*i<=nNum,其次在k遍历指数时把k+=i变成了k+=i*i; Ok,说来说去还是套模板~~~ 3.  题目:http://acm.hdu.edu.cn/showproblem.php?pid=1085 代码:http://www.wutianqi.com/?p=592 这题终于变化了一点,但是万变不离其中。 大家好好分析下,结合代码就会懂了。 4.  题目:http://acm.hdu.edu.cn/showproblem.php?pid=1171 代码:http://www.wutianqi.com/?p=594 还有一些题目,大家有时间自己做做: HDOJ:1709,1028、1709、1085、1171、1398、2069、2152 (原创文章,欢迎各位转载,但是请不要任意删除文章中链接,请自觉尊重文章版权,违法必究,谢谢合作。Tanky Woo原创, www.WuTianQi.com)

1.在维基百科里讲到了普通母函數、指數母函數、L級數、貝爾級數和狄利克雷級數: http://zh.wikipedia.org/zh-tw/%E6%AF%8D%E5%87%BD%E6%95%B0 2.Matrix67大牛那有篇文章:什么是生成函数: http://www.matrix67.com/blog/archives/120 3.大家可以看看杭电的ACM课件的母函数那篇,我这里的图片以及一些内容都引至那。

你可能感兴趣的:(母函数详解)

  • 深入解析JVM工作原理:从字节码到机器指令的全过程
    一、JVM概述Java虚拟机(JVM)是Java平台的核心组件,它实现了Java"一次编写,到处运行"的理念。JVM是一个抽象的计算机器,它有自己的指令集和运行时内存管理机制。JVM的主要职责:加载:读取.class文件并验证其正确性存储:管理内存分配和垃圾回收执行:解释或编译字节码为机器指令安全:提供沙箱环境限制恶意代码二、JVM架构详解JVM由三个主要子系统组成:1.类加载子系统类加载过程分为
  • JVM 内存模型深度解析:原子性、可见性与有序性的实现 练习时长两年半的程序员小胡 JVM深度剖析:从面试考点到生产实践jvmjava内存模型
    在了解了JVM的基础架构和类加载机制后,我们需要进一步探索Java程序在多线程环境下的内存交互规则。JVM内存模型(JavaMemoryModel,JMM)定义了线程和主内存之间的抽象关系,它通过规范共享变量的访问方式,解决了多线程并发时的数据一致性问题。本文将从内存模型的核心目标出发,详解原子性、可见性、有序性的实现机制,以及volatile、synchronized等关键字在其中的作用。一、J
  • Flowable 高级扩展:自定义元素与性能优化实战 练习时长两年半的程序员小胡 Flowable流程引擎实战指南流程图flowableBPMN流程引擎java
    在前五篇文章中,我们从基础概念、流程设计、API实战、SpringBoot集成,到外部系统协同,逐步构建了Flowable的应用体系。但企业级复杂场景中,原生功能往往难以满足定制化需求——比如需要特殊的审批规则网关、与决策引擎联动实现动态路由,或是在高并发场景下优化流程引擎性能。本文将聚焦Flowable的高级扩展能力,详解如何自定义流程元素、集成规则引擎,并掌握大型系统中的性能调优策略。一、自定
  • Android 应用权限管理详解
    文章目录1.权限类型2.权限请求机制3.权限组和分级4.权限管理的演进5.权限监控和SELinux强制访问控制6.应用权限审核和GooglePlayProtect7.开发者最佳实践8.用户权限管理9.Android应用沙箱模型10.ScopedStorage(分区存储)11.背景位置权限(BackgroundLocationAccess)12.权限回收和自动清理13.权限请求的用户体验设计14.G
  • uniapp微信小程序 - 详解微信小程序平台用户授权登录全流程,uniapp v3版本中小程序端开发下用户点击登录后获取手机号/昵称/性别/头像等信息完成登录(提供完整示例代码,一键复制开箱即用) 十一猫咪爱养鱼 前端组件与功能(开箱即用)uniapp常见问题解决uniappvue3uniapp3小程序授权登录微信小程序登录获取用户信息教程获取用户昵称手机号头像信息登录vue3版本小程序平台授权登录uniap小程序端用户登录流程uni完整的小程序平台登录源码
    效果图在uniapp微信小程序端开发中,超详细实现用户授权登录完整功能源码,用户授权后获取手机号/昵称/头像/性别等,提供完整思路流程及逻辑讲解。uniappVue3和Vue2都能用,你也可以直接复制粘贴,然后改下参数放到你的项目中去就行。整体思路做功能之前,先来看一下整体流程是
  • Selenium 特殊控件操作与 ActionChains 实践详解 小馋喵知识杂货铺 selenium测试工具
    1.下拉框单选操作(a)使用SeleniumSelect类(标准HTML标签)Selenium提供了内置的Select类用于操作标准下拉框,这种方式简单且直观。fromselenium.webdriver.support.uiimportSelect#定位下拉框dropdown=Select(driver.find_element("id","dropdown_id"))#通过以下三种方式选择单个
  • DPDK 技术详解:榨干网络性能的“瑞士军刀”
    你是否曾感觉,即使拥有顶级的服务器和万兆网卡,你的网络应用也总是“喂不饱”硬件,性能总差那么一口气?传统的网络处理方式,就像在高速公路上设置了太多的收费站和检查点,限制了数据包的“奔跑”速度。今天,我们要深入探讨一个能够打破这些瓶颈,让你的网络应用快到飞起的“黑科技”——DPDK(DataPlaneDevelopmentKit,数据平面开发套件)。这不仅仅是一个工具包,更是一种全新的网络处理哲学。
  • Anaconda 和 Miniconda:功能详解与选择建议 古月฿ python入门pythonconda
    Anaconda和Miniconda详细介绍一、Anaconda的详细介绍1.什么是Anaconda?Anaconda是一个开源的包管理和环境管理工具,在数据科学、机器学习以及科学计算领域发挥着关键作用。它以Python和R语言为基础,为用户精心准备了大量预装库和工具,极大地缩短了搭建数据科学环境的时间。对于那些想要快速开展数据分析、模型训练等工作的人员来说,Anaconda就像是一个一站式的“数
  • Android 基础知识:Android 应用权限详解 流水mpc android
    这篇文章为大家系统的梳理一下Android权限相关的知识,在日常开发中,我们都用过权限,但是对于权限的一些细节我们可能掌握的还不够全面,这篇文章会全面的为大家介绍权限相关的知识。当然,本篇文章依然是参考了Google的官方文档:应用权限。本文目录一、认识Android权限(一)Android系统为什么需要权限?Android系统设置权限的目的是保护Android用户的隐私。对于用户的敏感数据And
  • 面试必考题:Android Binder 机制详解 大模型大数据攻城狮 androidbinder面试reactnativekotlindalvikretrofit
    目录第一章:Binder的基本概念什么是Binder?多角度解读Binder第二章:Binder的工作机制Binder的整体流程服务注册:从零到有的第一步服务查询:找到目标的“地图”服务调用:请求与响应的旅程Binder驱动的幕后功劳为什么Binder这么快?第三章:Binder在系统架构中的角色Activity:界面背后的通信枢纽Binder的角色实例分析Service:后台任务的跨进程支柱Bi
  • Flutter权限插件详解:permission_handler使用指南 AI移动开发前沿 AI移动端开发宝典flutterai
    Flutter权限插件详解:permission_handler使用指南关键词:Flutter、权限插件、permission_handler、权限管理、移动开发摘要:本文围绕Flutter开发中常用的权限插件permission_handler展开详细介绍。首先阐述了在Flutter应用开发中处理权限的背景和重要性,接着深入解析permission_handler的核心概念、架构以及工作原理,通
  • C++中std::variant的使用详解和实战代码示例 点云SLAM C++c++开发语言variantC++泛型编程联合体C++类型擦除机制C++17
    std::variant是C++17引入的一个类型安全的联合体(type-safeunion),它可以在多个类型之间存储一个值,并在编译时进行类型检查。它是现代C++类型擦除与泛型编程的核心工具之一,适用于构建可变类型结构、消息传递系统、状态机等。一、基本概念#includestd::variantv;类似于联合体union,但类型安全。std::variant只能存储其中一个类型的值。默认构造时
  • C语言结构体详解 初学者,亦行者 C语言学习算法数据结构c语言
    目录C语言结构体1、声明结构体类型2、定义结构体变量3、成员的赋值与引用4、结构体数组5、结构体指针6、总结C语言结构体1、声明结构体类型前面学习了数组是一组相同类型数据的集合。但在实际应用中,我们往往会遇到不同类型的数据。而结构体就是用来存放不同数据的。#includeintmain(){structStu{intnum;//学号为整型charname[20];//姓名为字符串charsex;/
  • 登录功能详解 开往1982 java登录springboot
    本项目由maven项目改造springboot项目导入依赖org.springframework.bootspring-boot-starter-parent2.7.6org.springframework.bootspring-boot-starter-web2.7.6org.springframework.bootspring-boot-starter-test2.7.5org.springf
  • 从零到一:基于差分隐私决策树的客户购买预测系统实战开发 笙囧同学 决策树算法机器学习
    作者简介:笙囧同学,中科院计算机大模型方向硕士,全栈开发爱好者联系方式:[email protected]各大平台账号:笙囧同学座右铭:偷懒是人生进步的阶梯文章导航快速导航前言-项目背景与价值项目概览-系统架构与功能技术深度解析-核心算法原理️系统实现详解-工程实践细节性能评估与分析-实验结果分析Web系统开发-前后端开发部署与运维-DevOps实践完整复现指南-手把手教程️实践案例与故障排除-问
  • Claude Code 超详细完整指南(2025最新版) 笙囧同学 python
    终端AI编程助手|高频使用点+生态工具+完整命令参考+最新MCP配置目录快速开始(5分钟上手)详细安装指南系统要求Windows安装(WSL方案)macOS安装Linux安装安装验证配置与认证首次认证环境变量配置代理配置⚡基础命令详解启动命令会话管理文件操作Think模式完全指南MCP服务器配置详解MCP基础概念添加MCP服务器10个必备MCP服务器MCP故障排除记忆系统详解高级使用技巧成本控制策
  • CMS垃圾回收器+G1垃圾回收器+ZGC垃圾回收器详解及对比 weixin_43751710 jvmjava算法
    一、CMS收集器CMS(ConcurrentMarkSweep)收集器是一种以获取最短回收停顿时间为目标的收集器,是一款针对老年代的垃圾回收器,一般和Parallel回收器(一款新生代回收器,是使用复制算法的收集器,又是并行的多线程收集器,收集时会Stoptheworld)配合使用。1.工作过程从名字(包含“MarkSweep”)上就可以看出CMS收集器是基于标记-清除算法实现的,它的运作整个过程
  • 彻底搞懂Cache-Control qu木木 网络http缓存
    文章目录一、是什么?二、核心作用三、指令详解(常用)四、常见场景配置示例五、重要注意事项一、是什么?Cache-Control是HTTP头部中最关键、最灵活的控制缓存的字段,用于定义在客户端(浏览器)和代理服务器(如CDN)上的缓存策略。它取代了HTTP/1.0时代较为简单的Expires和Pragma头部,提供了更精细的控制。二、核心作用是否缓存:明确支出响应是否可以缓存,以及可以被谁缓存(浏览
  • 001 Configuration结构体构造 盖世灬英雄z DramSysc++人工智能
    目录DramSys代码分析1Configuration结构体构造1.1`from_path`函数详解1.2构造过程总结这种设计的好处2Simulator例化过程2.1instantiateInitiatorDramSys代码分析1Configuration结构体构造好的,我们来详细解释一下DRAMSysConfiguration.cpp文件中from_path函数的配置构造过程。这个文件是DRAM
  • SQL笔记纯干货 AI入门修炼 oracle数据库sql
    软件:DataGrip2023.2.3,phpstudy_pro,MySQL8.0.12目录1.DDL语句(数据定义语句)1.1数据库操作语言1.2数据表操作语言2.DML语句(数据操作语言)2.1增删改2.2题2.3备份表3.DQL语句(数据查询语言)3.1查询操作3.2题一3.3题二4.多表详解4.1一对多4.2多对多5.多表查询6.窗口函数7.拓展:upsert8.sql注入攻击演示9.拆表
  • 一分钟了解什么是SCI影响因子 ? 学术投稿人
    影响因子详解期刊的影响因子(ImpactFactor),指的是该刊前二年发表的文献在当前年的平均被引用次数。刊物的影响因子越高,也即其刊载的文献被引用率越高,一方面说明这些文献报道的研究成果影响力大,另一方面也反映该刊物的学术水平高。由美国科学情报研究所(ISI,InstituteforScientificInformation)创始人尤金.加菲得(Dr.E.Garfield)在1960年代创立,
  • Java 代理机制详解:从静态代理到动态代理,彻底掌握代理模式的原理与实战 大葱白菜 java合集java开发语言后端个人开发学习代理模式
    作为一名Java开发工程师,你一定在使用Spring、MyBatis、RPC框架等技术时接触过“代理”(Proxy)这个概念。无论是Spring的AOP(面向切面编程)、事务管理,还是远程调用、日志记录、权限控制等场景,代理机制都扮演着至关重要的角色。本文将带你全面掌握:什么是代理?静态代理与动态代理的区别JDK动态代理与CGLIB动态代理的实现原理代理模式的典型应用场景代理在主流框架中的使用(如
  • 响应式编程实践:Spring Boot WebFlux构建高性能非阻塞服务 fanxbl957 Webspringboot后端java
    博主介绍:Java、Python、js全栈开发“多面手”,精通多种编程语言和技术,痴迷于人工智能领域。秉持着对技术的热爱与执着,持续探索创新,愿在此分享交流和学习,与大家共进步。全栈开发环境搭建运行攻略:多语言一站式指南(环境搭建+运行+调试+发布+保姆级详解)感兴趣的可以先收藏起来,希望帮助更多的人响应式编程实践:SpringBootWebFlux构建高性能非阻塞服务一、引言在当今数字化时代,互
  • SpringBoot 核心注解详解与实战应用指南 策划加强小乔 SpringBootspringboot后端java
    SpringBoot通过丰富的注解简化了开发流程,提升了效率。以下从核心注解、配置注解、数据注解等方面展开详细说明,并附实战代码示例。@SpringBootApplication核心注解解析@SpringBootApplication是SpringBoot项目的核心注解,组合了三个关键功能:@Configuration:标识该类为配置类@EnableAutoConfiguration:启用自动配置
  • 云服务器如何搭建多站点?Nginx多域名部署方案详解 (2025)
    更多云服务器知识,尽在hostol.com当你拥有了第一台云服务器时,那种感觉,就如同得到了一块充满无限可能的“数字画布”。很多人的第一反应是,将自己最心爱的那个域名和网站部署上去,看着它在互联网上成功“点亮”。但是,随着你的项目增多、想法迸发,你可能会开始思考一个极具性价比的问题:我能在这同一台服务器上,再多放几个网站吗?比如,除了我的主博客之外,再放一个作品集网站,一个用于测试的开发站点,甚至
  • 从0到1学PHP(二):PHP 基本语法:构建代码的基石 奔跑吧邓邓子 项目攻略php开发语言基本语法
    目录一、PHP标记与注释1.1PHP的起始和结束标记1.2单行注释和多行注释二、变量与数据类型2.1变量的定义、命名规则和使用方法2.2数据类型详解2.3数据类型的转换三、运算符与表达式3.1各类运算符的使用3.2表达式的组成和运算规则一、PHP标记与注释1.1PHP的起始和结束标记在PHP编程中,起始标记是极为重要的基础概念。当PHP解析器处理文件时,一旦识别到结束标记,标记之外的内容会被忽略。
  • MYSQL:MySQL 事务隔离级别详解 奋斗的狍子007 MySQL核心知识点mysql数据库javaspring架构springbootide
    一、MySQL事务是什么?  MySQL事务是一组在数据库中执行的操作,这些操作要么全部成功执行,要么全部不执行,以确保数据库的完整性和一致性。事务的ACID  事务具有四个特征:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持续性(Durability)。这四个特性简称为ACID特性。原子性:事务是数据库的逻辑工作单位,事务中包含的各操作要么都做,
  • 分布式IO选型指南:2025年分布式无线远程IO品牌及采集控制方案详解 2501_91398178 分布式分布式IO模块远程IO模块
    近年来,随着工业物联网(IIoT)、智能制造和工业4.0的深入发展,分布式无线远程IO模块在工业控制领域的应用愈发广泛。这种模块通过无线方式实现远程数据采集与控制,极大地提高了工业设施的灵活性和效率。2025年,分布式IO市场呈现出技术革新与品牌竞争加剧的态势。本文基于权威数据平台(如Statista、MarketsandMarkets、GrandViewResearch)的市场分析,全面解读分布
  • 分布式事务Seata的4种模式详解 「已注销」 分布式wpf
    Seata是一个开源的分布式事务解决方案,它在微服务架构下提供了高性能和简单易用的分布式事务服务。Seata的设计基于AT、TCC、Saga和XA事务模式,以满足不同场景下的分布式事务处理需求,今天的内容针对Seata来详细介绍一下。1、四种事务模式介绍1.AT模式:这是一种无侵入的分布式事务解决方案。用户只需关注自己的业务SQL,Seata框架会自动生成事务的二阶段提交和回滚操作。在一阶段,Se
  • 分布式IO详解:2025年分布式无线远程IO采集控制方案选型指南 2501_91398178 分布式分布式IO
    随着工业物联网(IIoT)和智能制造的快速发展,分布式远程IO(输入/输出)采集控制技术作为工业自动化系统的重要组成部分,正逐步取代传统集中式控制架构。这种技术广泛应用于工厂自动化、能源管理、智慧城市、过程控制等领域。2025年,分布式无线远程IO系统凭借其灵活性、低功耗和高可靠性,成为工业控制领域的核心解决方案。本文基于权威数据平台分析,详细解读分布式无线远程IO技术,盘点全球领先厂商及其产品优
  • java杨辉三角 3213213333332132 java基础
    package com.algorithm; /** * @Description 杨辉三角 * @author FuJianyong * 2015-1-22上午10:10:59 */ public class YangHui { public static void main(String[] args) { //初始化二维数组长度 int[][] y
  • 《大话重构》之大布局的辛酸历史 白糖_ 重构
    《大话重构》中提到“大布局你伤不起”,如果企图重构一个陈旧的大型系统是有非常大的风险,重构不是想象中那么简单。我目前所在公司正好对产品做了一次“大布局重构”,下面我就分享这个“大布局”项目经验给大家。   背景         公司专注于企业级管理产品软件,企业有大中小之分,在2000年初公司用JSP/Servlet开发了一套针对中
  • 电驴链接在线视频播放源码 dubinwei 源码电驴播放器视频ed2k
    本项目是个搜索电驴(ed2k)链接的应用,借助于磁力视频播放器(官网: http://loveandroid.duapp.com/ 开放平台),可以实现在线播放视频,也可以用迅雷或者其他下载工具下载。 项目源码: http://git.oschina.net/svo/Emule,动态更新。也可从附件中下载。 项目源码依赖于两个库项目,库项目一链接: http://git.oschina.
  • Javascript中函数的toString()方法 周凡杨 JavaScriptjstoStringfunctionobject
    简述     The toString() method returns a string representing the source code of the function.     简译之,Javascript的toString()方法返回一个代表函数源代码的字符串。 句法     function.
  • struts处理自定义异常 g21121 struts
    很多时候我们会用到自定义异常来表示特定的错误情况,自定义异常比较简单,只要分清是运行时异常还是非运行时异常即可,运行时异常不需要捕获,继承自RuntimeException,是由容器自己抛出,例如空指针异常。 非运行时异常继承自Exception,在抛出后需要捕获,例如文件未找到异常。 此处我们用的是非运行时异常,首先定义一个异常LoginException: /** * 类描述:登录相
  • Linux中find常见用法示例 510888780 linux
    Linux中find常见用法示例 ·find   path   -option   [   -print ]   [ -exec   -ok   command ]   {} \; find命令的参数;
  • SpringMVC的各种参数绑定方式 Harry642 springMVC绑定表单
    1. 基本数据类型(以int为例,其他类似): Controller代码: @RequestMapping("saysth.do") public void test(int count) { } 表单代码: <form action="saysth.do" method="post&q
  • Java 获取Oracle ROWID aijuans javaoracle
    A ROWID is an identification tag unique for each row of an Oracle Database table. The ROWID can be thought of as a virtual column, containing the ID for each row. The oracle.sql.ROWID class i
  • java获取方法的参数名 antlove javajdkparametermethodreflect
    reflect.ClassInformationUtil.java package reflect; import javassist.ClassPool; import javassist.CtClass; import javassist.CtMethod; import javassist.Modifier; import javassist.bytecode.CodeAtt
  • JAVA正则表达式匹配 查找 替换 提取操作 百合不是茶 java正则表达式替换提取查找
    正则表达式的查找;主要是用到String类中的split();       String str;      str.split();方法中传入按照什么规则截取,返回一个String数组   常见的截取规则: str.split("\\.")按照.来截取 str.
  • Java中equals()与hashCode()方法详解 bijian1013 javasetequals()hashCode()
    一.equals()方法详解     equals()方法在object类中定义如下:  public boolean equals(Object obj) { return (this == obj); }    很明显是对两个对象的地址值进行的比较(即比较引用是否相同)。但是我们知道,String 、Math、I
  • 精通Oracle10编程SQL(4)使用SQL语句 bijian1013 oracle数据库plsql
    --工资级别表 create table SALGRADE ( GRADE NUMBER(10), LOSAL NUMBER(10,2), HISAL NUMBER(10,2) ) insert into SALGRADE values(1,0,100); insert into SALGRADE values(2,100,200); inser
  • 【Nginx二】Nginx作为静态文件HTTP服务器 bit1129 HTTP服务器
     Nginx作为静态文件HTTP服务器 在本地系统中创建/data/www目录,存放html文件(包括index.html) 创建/data/images目录,存放imags图片 在主配置文件中添加http指令   http { server { listen 80; server_name
  • kafka获得最新partition offset blackproof kafkapartitionoffset最新
    kafka获得partition下标,需要用到kafka的simpleconsumer   import java.util.ArrayList; import java.util.Collections; import java.util.Date; import java.util.HashMap; import java.util.List; import java.
  • centos 7安装docker两种方式 ronin47
          第一种是采用yum 方式              yum install -y docker           
  • java-60-在O(1)时间删除链表结点 bylijinnan java
    public class DeleteNode_O1_Time { /** * Q 60 在O(1)时间删除链表结点 * 给定链表的头指针和一个结点指针(!!),在O(1)时间删除该结点 * * Assume the list is: * head->...->nodeToDelete->mNode->nNode->..
  • nginx利用proxy_cache来缓存文件 cfyme cache
    user  zhangy users; worker_processes 10; error_log  /var/vlogs/nginx_error.log  crit; pid        /var/vlogs/nginx.pid; #Specifies the value for ma
  • [JWFD开源工作流]JWFD嵌入式语法分析器负号的使用问题 comsci 嵌入式
        假如我们需要用JWFD的语法分析模块定义一个带负号的方程式,直接在方程式之前添加负号是不正确的,而必须这样做:     string str01 = "a=3.14;b=2.71;c=0;c-((a*a)+(b*b))"     定义一个0整数c,然后用这个整数c去
  • 如何集成支付宝官方文档 dai_lm android
    官方文档下载地址 https://b.alipay.com/order/productDetail.htm?productId=2012120700377310&tabId=4#ps-tabinfo-hash 集成的必要条件 1. 需要有自己的Server接收支付宝的消息 2. 需要先制作app,然后提交支付宝审核,通过后才能集成 调试的时候估计会真的扣款,请注意
  • 应该在什么时候使用Hadoop datamachine hadoop
    原帖地址:http://blog.chinaunix.net/uid-301743-id-3925358.html 存档,某些观点与我不谋而合,过度技术化不可取,且hadoop并非万能。 --------------------------------------------万能的分割线-------------------------------- 有人问我,“你在大数据和Hado
  • 在GridView中对于有外键的字段使用关联模型进行搜索和排序 dcj3sjt126com yii
    在GridView中使用关联模型进行搜索和排序 首先我们有两个模型它们直接有关联: class Author extends CActiveRecord { ... } class Post extends CActiveRecord { ... function relations() { return array( '
  • 使用NSString 的格式化大全 dcj3sjt126com Objective-C
    格式定义The format specifiers supported by the NSString formatting methods and CFString formatting functions follow the IEEE printf specification; the specifiers are summarized in Table 1. Note that you c
  • 使用activeX插件对象object滚动有重影 蕃薯耀 activeX插件滚动有重影
      使用activeX插件对象object滚动有重影   <object style="width:0;" id="abc" classid="CLSID:D3E3970F-2927-9680-BBB4-5D0889909DF6" codebase="activex/OAX339.CAB#
  • SpringMVC4零配置 hanqunfeng springmvc4
    基于Servlet3.0规范和SpringMVC4注解式配置方式,实现零xml配置,弄了个小demo,供交流讨论。     项目说明如下: 1.db.sql是项目中用到的表,数据库使用的是oracle11g 2.该项目使用mvn进行管理,私服为自搭建nexus,项目只用到一个第三方 jar,就是oracle的驱动; 3.默认项目为零配置启动,如果需要更改启动方式,请
  • 《开源框架那点事儿16》:缓存相关代码的演变 j2eetop 开源框架
    问题引入 上次我参与某个大型项目的优化工作,由于系统要求有比较高的TPS,因此就免不了要使用缓冲。 该项目中用的缓冲比较多,有MemCache,有Redis,有的还需要提供二级缓冲,也就是说应用服务器这层也可以设置一些缓冲。 当然去看相关实现代代码的时候,大致是下面的样子。 [java] view plain copy print ? public vo
  • AngularJS浅析 kvhur JavaScript
    概念 AngularJS is a structural framework for dynamic web apps. 了解更多详情请见原文链接:http://www.gbtags.com/gb/share/5726.htm Directive 扩展html,给html添加声明语句,以便实现自己的需求。对于页面中html元素以ng为前缀的属性名称,ng是angular的命名空间
  • 架构师之jdk的bug排查(一)---------------split的点号陷阱 nannan408 split
    1.前言.    jdk1.6的lang包的split方法是有bug的,它不能有效识别A.b.c这种类型,导致截取长度始终是0.而对于其他字符,则无此问题.不知道官方有没有修复这个bug. 2.代码 String[] paths = "object.object2.prop11".split("'"); System.ou
  • 如何对10亿数据量级的mongoDB作高效的全表扫描 quentinXXZ mongodb
      本文链接:  http://quentinXXZ.iteye.com/blog/2149440 一、正常情况下,不应该有这种需求 首先,大家应该有个概念,标题中的这个问题,在大多情况下是一个伪命题,不应该被提出来。要知道,对于一般较大数据量的数据库,全表查询,这种操作一般情况下是不应该出现的,在做正常查询的时候,如果是范围查询,你至少应该要加上limit。 说一下,
  • C语言算法之水仙花数 qiufeihu c算法
    /** * 水仙花数 */ #include <stdio.h> #define N 10 int main() { int x,y,z; for(x=1;x<=N;x++) for(y=0;y<=N;y++) for(z=0;z<=N;z++) if(x*100+y*10+z == x*x*x
  • JSP指令 wyzuomumu jsp
    jsp指令的一般语法格式: <%@ 指令名 属性 =”值 ” %> 常用的三种指令: page,include,taglib page指令语法形式: <%@ page 属性 1=”值 1” 属性 2=”值 2”%> include指令语法形式: <%@include file=”relative url”%> (jsp可以通过 include
按字母分类: ABCDEFGHIJKLMNOPQRSTUVWXYZ其他
首页 - 关于我们 - 站内搜索 - Sitemap - 侵权投诉
版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved.